# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit autotools DL_UUID="42a6470c-53bf-4993-abad-ba5b4a1d5d84" MY_PV="${PV}-1" DESCRIPTION="Epson ESC/P-R 2 generic Inkjet Printer Driver" HOMEPAGE="https://support.epson.net/linux/Printer/LSB_distribution_pages/en/escpr2.php" # To get the (link for the) .tar.gz sources, which are identical to the .rpm sources for x86, go to the Epson Download Center # https://download-center.epson.com/search/?language=en. Search for any supported printer, e.g. "XP-970", select # "Linux Deb(ARM32)", any country, and under "Source Code" click "Proceed to download". SRC_URI="https://download-center.epson.com/f/module/${DL_UUID}/${PN}-${MY_PV}.tar.gz" LICENSE="EPSON-EULA LGPL-2.1" SLOT="0" KEYWORDS="amd64 arm arm64 x86" IUSE="escprlib velvet-paper" RESTRICT="fetch" RDEPEND="net-print/cups !net-print/epson-inkjet-printer-escpr2-bin" DEPEND="${RDEPEND}" PATCHES=( # Shamelessly copied from: # https://aur.archlinux.org/packages/epson-inkjet-printer-escpr2/ # Patch URL: https://aur.archlinux.org/cgit/aur.git/commit/?h=epson-inkjet-printer-escpr2&id=8fbca325d6d39fa3ffe001f90a432380bdeacc2f "${FILESDIR}/gcc-no-implicit-function-declaration-1.2.31.patch" ) pkg_nofetch() { local UA_STRING="Mozilla/5.0 (KHTML, like Gecko)" einfo einfo "Epson restricted download by blocking User Agent strings like the one wget uses." einfo "This means you have to fetch the source file manually." einfo einfo "Please either visit the Epson Download Center to get the source file using your Internet browser:" einfo " 1. Visit https://download-center.epson.com/search/?language=en" einfo " 2. Search for your or any other supported printer, e.g. \"XP-970\"." einfo " 3. Select \"Linux Deb(ARM 32Bit)\" and any country." einfo " 4. Click \"Search\", a new page with the results will be loaded." einfo " 5. Under \"Source Code\" there should be \"Epson Inkjet Printer Driver 2 (ESC/P-R) for Linux\"." einfo " Simply click \"Proceed to download\" on the right." einfo einfo "Alternatively you may specify a browser User Agent string for the download:" einfo " wget --user-agent=\"${UA_STRING}\" \\" einfo " ${SRC_URI}" einfo einfo "Place the source file into your DISTDIR directory." einfo } src_prepare() { # the patch to re-enable Velvet Fine Art paper was provided by DerFetzer, see https://aur.archlinux.org/packages/epson-inkjet-printer-escpr2 if use velvet-paper; then PATCHES+=( "${FILESDIR}/enable_velvet_fine_art_paper.patch" ) fi default eautoreconf } src_configure() { econf --disable-shared # Makefile calls ls to generate a file list which is included in Makefile.am # Set the collation to C to avoid automake being called automatically unset LC_ALL export LC_COLLATE=C } src_install() { emake -C ppd DESTDIR="${D}" install if use escprlib ; then emake -C escprlib DESTDIR="${D}" install fi emake -C src DESTDIR="${D}" install einstalldocs } pkg_postinst() { elog "The online user manual is available at:" elog " https://download.ebz.epson.net/man/linux/escpr2.html" }