From 79e74c3e3601b76cd95d1c8c40f6d6e4040287de Mon Sep 17 00:00:00 2001 From: Marcin Deranek Date: Sun, 8 Mar 2020 02:21:01 +0100 Subject: Epson scanning software --- media-gfx/iscan-plugin-network-nt/Manifest | 2 + .../iscan-plugin-network-nt-1.1.3.ebuild | 37 +++++++++++ media-gfx/iscan/Manifest | 4 ++ .../iscan/files/iscan-3.62.0-ijg-libjpeg.patch | 45 ++++++++++++++ .../iscan/files/iscan-3.62.0-imagemagick-7.patch | 54 ++++++++++++++++ media-gfx/iscan/iscan-3.62.0.ebuild | 72 ++++++++++++++++++++++ 6 files changed, 214 insertions(+) create mode 100644 media-gfx/iscan-plugin-network-nt/Manifest create mode 100644 media-gfx/iscan-plugin-network-nt/iscan-plugin-network-nt-1.1.3.ebuild create mode 100644 media-gfx/iscan/Manifest create mode 100644 media-gfx/iscan/files/iscan-3.62.0-ijg-libjpeg.patch create mode 100644 media-gfx/iscan/files/iscan-3.62.0-imagemagick-7.patch create mode 100644 media-gfx/iscan/iscan-3.62.0.ebuild (limited to 'media-gfx') diff --git a/media-gfx/iscan-plugin-network-nt/Manifest b/media-gfx/iscan-plugin-network-nt/Manifest new file mode 100644 index 0000000..b623ca1 --- /dev/null +++ b/media-gfx/iscan-plugin-network-nt/Manifest @@ -0,0 +1,2 @@ +DIST imagescan-bundle-centos-8-3.62.0.x64.rpm.tar.gz 11111201 BLAKE2B 51b868569fa049f8bc35a911245895c0fe0c5e0060b129c1c84a39cddd0aa4344ea024b6896dadc535438bcfc0be74337348533adf1b2be8866aad4e30bcb41a SHA512 11af49d20fc8e828c25dc6e912d1dbefebcba9835b1ebe922bc57c30dd0d13b79508a1bb01ad260c721d865fd393a41bc2bf41dc84b42efb22512a28cc9542f3 +EBUILD iscan-plugin-network-nt-1.1.3.ebuild 1085 BLAKE2B 44ceb2a647d5d66826c6f8854611ac67842629f292dd1782e8054be1674880aa65ae1712e5bd0d2acccb301d45ca1f19dc276546fa5011ae264be9a77e361063 SHA512 677d62fa277f19c151f0ffee8809c25b799d3a129717e1f8d5c52cee22e10bbb6ecba68d19623cdcd2094158ee05a9dc114f705f75a1dd3ec4f9e7e2c7c9f25f diff --git a/media-gfx/iscan-plugin-network-nt/iscan-plugin-network-nt-1.1.3.ebuild b/media-gfx/iscan-plugin-network-nt/iscan-plugin-network-nt-1.1.3.ebuild new file mode 100644 index 0000000..5c9a1f3 --- /dev/null +++ b/media-gfx/iscan-plugin-network-nt/iscan-plugin-network-nt-1.1.3.ebuild @@ -0,0 +1,37 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit linux-info rpm + +DESCRIPTION="Network scanning plugin for EPSON scanners (nonfree)" + +HOMEPAGE="http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX" +# This is distributed as part of the "bundle driver"; since we already have the +# opensource part separately we just install the nonfree part here. + +ISCAN_VERSION="3.62.0" + +SRC_URI="https://download2.ebz.epson.net/imagescanv3/centos/latest1/rpm/x64/imagescan-bundle-centos-8-${ISCAN_VERSION}.x64.rpm.tar.gz" +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64" + +RDEPEND="media-gfx/iscan" +RESTRICT="bindist mirror strip" +CONFIG_CHECK="~SYN_COOKIES" +S=${WORKDIR} + +src_unpack() { + default + rpm_unpack ./imagescan-bundle-centos-8-${ISCAN_VERSION}.x64.rpm/plugins/imagescan-plugin-networkscan-${PV}-1epson4centos8.x86_64.rpm +} + +src_install() { + exeinto /usr/libexec/utsushi + doexe usr/libexec/utsushi/networkscan + + gunzip usr/share/doc/imagescan-plugin-networkscan/*.gz + dodoc usr/share/doc/imagescan-plugin-networkscan/* +} diff --git a/media-gfx/iscan/Manifest b/media-gfx/iscan/Manifest new file mode 100644 index 0000000..ecf6cfb --- /dev/null +++ b/media-gfx/iscan/Manifest @@ -0,0 +1,4 @@ +AUX iscan-3.62.0-ijg-libjpeg.patch 1145 BLAKE2B 781c0c9a40848f9c10ddb3418c55b6c4a145f1590c5ec41e22e371830d3d7d63c4e013d8fa69a1f15f24d4883d569c0645df66b3c6120eb724f3a1f9643e3813 SHA512 b570bc0e6aa73f74750aaab4d3ca84838864c8723b14fbf5a45fe9163be3e7819035a12bd058587a4b4964325ba4af99673e78647b11d2a7b1bcf96039522191 +AUX iscan-3.62.0-imagemagick-7.patch 1965 BLAKE2B 14685cc9540ccfda87587b5ff2df7b8c4755dd08bb428f33ce853c32baaf6ab7e6b2d3368df9153fa5f5b39d9ef17b8e468ea59530ac89098107542db2638f05 SHA512 d5545570865370229f2b132aef7131cbbfabd7e929795bee6ce1e0d791c2c623eefabdd0ec265c6cadcc41072049d61e07d5fca46a1f51c621323a38112dc316 +DIST imagescan_3.62.0.orig.tar.gz 12650003 BLAKE2B 732283eb8370192fdd0fba8939bc81e277a7a227b024f14856b8d3d5c562b7320c7b40aa48cfa627e23dc654544c9bac27d35add5e10bf0ca65ab0279290b90c SHA512 3b6188013d162c605a3ce1bcac9e5a7b16b1af6363bc7ef4b257aed1c0d3e3dfd402a048ec699b6b6cc42883d0b26f50f0c6f1bd0ddc917baed4ce8902a9d8fa +EBUILD iscan-3.62.0.ebuild 1705 BLAKE2B 409d2e2fb62150c334a985dc1abd92b2f73b2d3d7c30b48af67a6858ebef85a30b3d7cea6a6141158b7d11a86e133ae67c76ec06943072553d7849fb30481db3 SHA512 f3e5e29cdb6d533a8c606e96db21fc5d97793ed13c318575cb6d59632018d3c90beb9512b2095ebe29ef1c9473bc6eeabd2fe17ce678662b49d6b69d5bb8db13 diff --git a/media-gfx/iscan/files/iscan-3.62.0-ijg-libjpeg.patch b/media-gfx/iscan/files/iscan-3.62.0-ijg-libjpeg.patch new file mode 100644 index 0000000..2625741 --- /dev/null +++ b/media-gfx/iscan/files/iscan-3.62.0-ijg-libjpeg.patch @@ -0,0 +1,45 @@ +--- a/filters/jpeg.cpp ++++ b/filters/jpeg.cpp +@@ -410,13 +410,13 @@ + cinfo_.image_height = ctx_.height (); + + jpeg_set_defaults (&cinfo_); +- jpeg_set_quality (&cinfo_, quality_, true); ++ jpeg_set_quality (&cinfo_, quality_, TRUE); + + cinfo_.density_unit = 1; // in dpi + cinfo_.X_density = ctx_.x_resolution (); + cinfo_.Y_density = ctx_.y_resolution (); + +- jpeg_start_compress (&cinfo_, true); ++ jpeg_start_compress (&cinfo_, TRUE); + + cache_ = new octet[ctx_.octets_per_line ()]; + cache_size_ = ctx_.octets_per_line (); +@@ -462,7 +462,7 @@ + dmgr_.next_output_byte = jbuf_ + (jbuf_size_ - n); + dmgr_.free_in_buffer = n; + +- return true; ++ return TRUE; + } + + void +@@ -535,7 +535,7 @@ + + //jpegデータの一部が分割されて送られてきても正常に動作するように変更 + +- return false; ++ return FALSE; + } + + void +@@ -580,7 +580,7 @@ + { + if (!header_done_) + { +- if (JPEG_SUSPENDED == jpeg_read_header (&cinfo_, true)) ++ if (JPEG_SUSPENDED == jpeg_read_header (&cinfo_, TRUE)) + { + log::trace ("jpeg_read_header suspended"); + if (!reclaim_space ()) diff --git a/media-gfx/iscan/files/iscan-3.62.0-imagemagick-7.patch b/media-gfx/iscan/files/iscan-3.62.0-imagemagick-7.patch new file mode 100644 index 0000000..9d345a2 --- /dev/null +++ b/media-gfx/iscan/files/iscan-3.62.0-imagemagick-7.patch @@ -0,0 +1,54 @@ +From 222aa3e123ee771d8997f6931997e3143186e0d6 Mon Sep 17 00:00:00 2001 +From: sirjaren +Date: Tue, 20 Feb 2018 13:35:46 -0600 +Subject: [PATCH] media-gfx/utsushi: ImageMagick deskew/crop support + +Fixes to allow utsushi to be built with --magick-pp. According to: + https://github.com/utsushi/utsushi/issues/43 + +The API changes from ImageMagick 6 to 7 means build failures as there +are old API's in use. It seems, that these API's are not actually used +(as in GraphicsMagick doesn't use them), so it may be ok to disable the +checks for them in 'doc-locate.cpp'. + +This is not yet confirmed, but allows building and using deskew in my +own testing. +--- + .../files/utsushi-9999-magick-pp.patch | 33 ++++++++++ + 4 files changed, 111 insertions(+), 8 deletions(-) + create mode 100644 media-gfx/utsushi/files/utsushi-9999-boost.patch + create mode 100644 media-gfx/utsushi/files/utsushi-9999-magick-pp.patch + +diff --git a/filters/doc-locate.cpp b/filters/doc-locate.cpp +index 4b09b29..4508274 100644 +--- a/filters/doc-locate.cpp ++++ b/filters/doc-locate.cpp +@@ -260,17 +260,17 @@ public: + clone.rotate (deskew_angle ()); + + Magick::Geometry rv = bbox (clone); +- if (HAVE_IMAGE_MAGICK_PP) +- { +- if (clone.page ().xNegative ()) +- rv.xOff (rv.xOff () - clone.page ().xOff()); +- else +- rv.xOff (rv.xOff () + clone.page ().xOff()); +- if (clone.page ().yNegative ()) +- rv.yOff (rv.yOff () - clone.page ().yOff()); +- else +- rv.yOff (rv.yOff () + clone.page ().yOff()); +- } ++ /*if (HAVE_IMAGE_MAGICK_PP) ++ *{ ++ * if (clone.page ().xNegative ()) ++ * rv.xOff (rv.xOff () - clone.page ().xOff()); ++ * else ++ * rv.xOff (rv.xOff () + clone.page ().xOff()); ++ * if (clone.page ().yNegative ()) ++ * rv.yOff (rv.yOff () - clone.page ().yOff()); ++ * else ++ * rv.yOff (rv.yOff () + clone.page ().yOff()); ++ }*/ + return scale (rv); + } + diff --git a/media-gfx/iscan/iscan-3.62.0.ebuild b/media-gfx/iscan/iscan-3.62.0.ebuild new file mode 100644 index 0000000..a4d4be9 --- /dev/null +++ b/media-gfx/iscan/iscan-3.62.0.ebuild @@ -0,0 +1,72 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools flag-o-matic udev + +DESCRIPTION="EPSON Image Scan v3 for Linux" +HOMEPAGE="http://support.epson.net/linux/en/imagescanv3.php" +SRC_URI="http://support.epson.net/linux/src/scanner/imagescanv3/common/imagescan_${PV}.orig.tar.gz" + +LICENSE="GPL-3+" +SLOT="0" +IUSE="graphicsmagick gui imagemagick" +KEYWORDS="~amd64 ~x86" + +DEPEND=" + dev-libs/boost:= + media-gfx/sane-backends + media-libs/tiff + virtual/libusb:1 + virtual/jpeg + gui? ( dev-cpp/gtkmm:2.4 ) + imagemagick? ( + !graphicsmagick? ( media-gfx/imagemagick:= ) + graphicsmagick? ( media-gfx/graphicsmagick:= ) + ) +" +RDEPEND="${DEPEND}" + +S="${WORKDIR}/utsushi-0.$(ver_cut 2-3)" + +PATCHES=( + "${FILESDIR}"/${P}-ijg-libjpeg.patch + "${FILESDIR}"/${P}-imagemagick-7.patch +) + +src_prepare() { + default + + # Remove vendored libraries + rm -r upstream/boost + # Workaround for deprecated warnings + sed -e 's|-Werror||g' -i configure.ac + eautoreconf +} + +src_configure() { + # Workaround for: + # /usr/lib64/utsushi/libutsushi.so.0: undefined symbol: libcnx_usb_LTX_factory + append-ldflags $(no-as-needed) + econf \ + $(use_with gui gtkmm) \ + $(use_with imagemagick magick) \ + $(use_with imagemagick magick-pp) \ + --enable-sane-config \ + --enable-udev-config \ + --with-boost=yes \ + --with-jpeg \ + --with-sane \ + --with-tiff \ + --with-udev-confdir="$(get_udevdir)" +} + +src_install() { + default + dodoc lib/devices.conf + find "${ED}" -name '*.la' -delete || die + + elog "If you encounter problems with media-gfx/xsane when scanning (e.g., bad resolution)," + elog "please try the built-in GUI and kde-misc/skanlite first before reporting bugs." +} -- cgit v1.2.3