From 56bd759df1d0c750a065b8c845e93d5dfa6b549d Mon Sep 17 00:00:00 2001 From: "Robin H. Johnson" Date: Sat, 8 Aug 2015 13:49:04 -0700 Subject: proj/gentoo: Initial commit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson X-Thanks: Alec Warner - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring - wrote much python to improve cvs2svn X-Thanks: Rich Freeman - validation scripts X-Thanks: Patrick Lauer - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed --- net-print/hplip/Manifest | 5 + net-print/hplip/hplip-3.14.10.ebuild | 266 +++++++++++++++++++++++++++++++++++ net-print/hplip/hplip-3.15.6.ebuild | 260 ++++++++++++++++++++++++++++++++++ net-print/hplip/hplip-3.15.7.ebuild | 260 ++++++++++++++++++++++++++++++++++ net-print/hplip/metadata.xml | 28 ++++ 5 files changed, 819 insertions(+) create mode 100644 net-print/hplip/Manifest create mode 100644 net-print/hplip/hplip-3.14.10.ebuild create mode 100644 net-print/hplip/hplip-3.15.6.ebuild create mode 100644 net-print/hplip/hplip-3.15.7.ebuild create mode 100644 net-print/hplip/metadata.xml (limited to 'net-print/hplip') diff --git a/net-print/hplip/Manifest b/net-print/hplip/Manifest new file mode 100644 index 000000000000..76c6981f18e6 --- /dev/null +++ b/net-print/hplip/Manifest @@ -0,0 +1,5 @@ +DIST hplip-3.14.10-patches-1.tar.xz 8140 SHA256 33116a5e2c104495d60f0b15e923b2ae5eaaf269cd5ee8e988b035eb20aa23ab SHA512 a8deb03979c55b660ef299505afc328fc930786ea9d473109a9fafd83d72528a9c3700faf4742f2e05829824fc97c3656538e1a607e2191e617f3944f0482e9a WHIRLPOOL bbf5d62f29c0fb0162f34b7815fc190459c619fdaf4f96e33d085f9b7228fa5431b6d668322256995a0a1d16aa1cccb75171000bbb2334ad3b51fec47f2653c0 +DIST hplip-3.14.10.tar.gz 21773429 SHA256 11b3cd8311dea6b22a4c80be1e5d021e84d15a5f3e7e22cbd43798e5c1a89598 SHA512 ed184c8d0d3d8d5aad454831013d7c5e0b1685b088ee8099b6efc1b152f8b159a2349f23f0c5c77a7a5f1a48165b0e22f2ff83ced1beb14633bd278d4ef4d6dc WHIRLPOOL 8e1985cfd370849db96765f792655da36e22b6cecb660dd4707b0ff33dd53c8b66b2ec73a9596c7e60036edc1843c195bbbde64f37c5a1c319752bf0ebc08eb6 +DIST hplip-3.15.6-patches-1.tar.xz 8176 SHA256 3f42f72590966f49788ae620948dd3fe206c914d2d4a8d21aaaa86ef5f8b4645 SHA512 d9a35c594f087508a58d07b7c9f47e7bfb280ad66533481b069065cfbdc1927d56d50ab8b50d256bba1bd369fecc6c647bdae7a56a7f0e9edd74da8377dd22f4 WHIRLPOOL f3e0eb720ba14d596f68f106b71c7bd225dfe753cdd56857aa8d2600a72517384ad1a0cbfec7b3ac60922d682bd77a7f3ea2b44db6cdebacee820ebcfbcfc232 +DIST hplip-3.15.6.tar.gz 21956752 SHA256 30c513ee65aa5b342d8074ff89439c0827c35191683727335738d8bc0f9776c9 SHA512 97abde02c588563b77bd1eca73e1864eb6bda218fe9e7b77396ecc461ea884d94b5757c01486c81177c354e1aeec73eae0620d3a06d7b42d0ad2f62cb91334d3 WHIRLPOOL 12c72f36d0abbe73a0b4c489d783a9e11bbf33bfe15575a40db37a598edf34f9f8ccc4b5dc1aadbf7f308311decf19ca92af6192094c6d8e0c40c1a9d1b6c464 +DIST hplip-3.15.7.tar.gz 21979938 SHA256 d310903048f3600f93422e5a8c39ddd682511e0849cd9abc5e943f9a10bdd49d SHA512 45458b74ec496816292c40a9c1d5aed4a288f84be62e79378e701fff5fb1cb55cc77e8415884b824602ec6af8d1155b7dc288ef7382a2e4d96b337520d541a1c WHIRLPOOL 9cf840f79a63877e8fb36ddd51681e1473450c81bd46263272037682519e3ddfdfffc79ac86a60212d46ae61778fac118a9e5576bbf02892c46eba645b960f00 diff --git a/net-print/hplip/hplip-3.14.10.ebuild b/net-print/hplip/hplip-3.14.10.ebuild new file mode 100644 index 000000000000..8486d1112a84 --- /dev/null +++ b/net-print/hplip/hplip-3.14.10.ebuild @@ -0,0 +1,266 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE="threads,xml" + +inherit eutils fdo-mime linux-info python-single-r1 udev autotools toolchain-funcs + +DESCRIPTION="HP Linux Imaging and Printing. Includes printer, scanner, fax drivers and service tools" +HOMEPAGE="http://hplipopensource.com/hplip-web/index.html" +SRC_URI="mirror://sourceforge/hplip/${P}.tar.gz + http://dev.gentoo.org/~billie/distfiles/${PN}-3.14.10-patches-1.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 arm ppc ppc64 x86" + +# zeroconf does not work properly with >=cups-1.4. +# Thus support for it is also disabled in hplip. +IUSE="doc fax +hpcups hpijs kde libnotify -libusb0 minimal parport policykit qt4 scanner snmp static-ppds X" + +# TODO: check if net-print/cups, net-analyzer/net-snmp +# are migrated to python-r1 + +COMMON_DEPEND=" + virtual/jpeg:0 + hpijs? ( + || ( >=net-print/cups-filters-1.0.43-r1[foomatic] >=net-print/foomatic-filters-3.0.20080507[cups] ) + ) + !minimal? ( + ${PYTHON_DEPS} + >=net-print/cups-1.4.0 + !libusb0? ( virtual/libusb:1 ) + libusb0? ( virtual/libusb:0 ) + scanner? ( >=media-gfx/sane-backends-1.0.19-r1 ) + fax? ( >=sys-apps/dbus-1.6.8-r1 ) + snmp? ( + net-analyzer/net-snmp + dev-libs/openssl:0 + ) + )" + +DEPEND="${COMMON_DEPEND} + virtual/pkgconfig" + +RDEPEND="${COMMON_DEPEND} + >=app-text/ghostscript-gpl-8.71-r3 + policykit? ( + sys-auth/polkit + ) + !minimal? ( + >=dev-python/dbus-python-1.1.1-r1[${PYTHON_USEDEP}] + >=dev-python/pygobject-2.28.6-r53:2[${PYTHON_USEDEP}] + kernel_linux? ( virtual/udev !=dev-python/reportlab-2.6[${PYTHON_USEDEP}] + >=virtual/python-imaging-1[${PYTHON_USEDEP}] + X? ( || ( + kde? ( kde-misc/skanlite ) + media-gfx/xsane + media-gfx/sane-frontends + ) ) + ) + fax? ( + >=dev-python/reportlab-2.6[${PYTHON_USEDEP}] + >=dev-python/dbus-python-1.1.1-r1[${PYTHON_USEDEP}] + ) + qt4? ( + >=dev-python/PyQt4-4.9.6-r2[dbus,X,${PYTHON_USEDEP}] + libnotify? ( + >=dev-python/notify-python-0.1.1-r3[${PYTHON_USEDEP}] + ) + ) + )" + +REQUIRED_USE="!minimal? ( ${PYTHON_REQUIRED_USE} )" + +CONFIG_CHECK="~PARPORT ~PPDEV" +ERROR_PARPORT="Please make sure kernel parallel port support is enabled (PARPORT and PPDEV)." + +pkg_setup() { + use !minimal && python-single-r1_pkg_setup + + ! use qt4 && ewarn "You need USE=qt4 for the hplip GUI." + + use scanner && ! use X && ewarn "You need USE=X for the scanner GUI." + + if ! use hpcups && ! use hpijs ; then + ewarn "Installing neither hpcups (USE=-hpcups) nor hpijs (USE=-hpijs) driver," + ewarn "which is probably not what you want." + ewarn "You will almost certainly not be able to print." + fi + + if use minimal ; then + ewarn "Installing driver portions only, make sure you know what you are doing." + ewarn "Depending on the USE flags set for hpcups or hpijs the appropiate driver" + ewarn "is installed. If both USE flags are set hpijs overrides hpcups." + else + use parport && linux-info_pkg_setup + fi +} + +src_prepare() { + if use !minimal ; then + python_export EPYTHON PYTHON + python_fix_shebang . + fi + + EPATCH_SUFFIX="patch" \ + EPATCH_FORCE="yes" \ + epatch "${WORKDIR}" + + # Make desktop files follow the specification + # Gentoo bug: https://bugs.gentoo.org/show_bug.cgi?id=443680 + # Upstream bug: https://bugs.launchpad.net/hplip/+bug/1080324 + sed -i -e '/^Categories=/s/Application;//' \ + -e '/^Encoding=.*/d' hplip.desktop.in || die + sed -i -e '/^Categories=/s/Application;//' \ + -e '/^Version=.*/d' \ + -e '/^Comment=.*/d' hplip-systray.desktop.in || die + + # Fix for Gentoo bug https://bugs.gentoo.org/show_bug.cgi?id=345725 + # Upstream bug: https://bugs.launchpad.net/hplip/+bug/880847, + # https://bugs.launchpad.net/hplip/+bug/500086 + local udevdir=$(get_udevdir) + sed -i -e "s|/etc/udev|${udevdir}|g" \ + $(find . -type f -exec grep -l /etc/udev {} +) || die + + # Force recognition of Gentoo distro by hp-check + sed -i \ + -e "s:file('/etc/issue', 'r').read():'Gentoo':" \ + installer/core_install.py || die + + # Use system foomatic-rip for hpijs driver instead of foomatic-rip-hplip + # The hpcups driver does not use foomatic-rip + local i + for i in ppd/hpijs/*.ppd.gz ; do + rm -f ${i}.temp || die + gunzip -c ${i} | sed 's/foomatic-rip-hplip/foomatic-rip/g' | \ + gzip > ${i}.temp || die + mv ${i}.temp ${i} || die + done + + eautoreconf +} + +src_configure() { + local myconf drv_build minimal_build + + if use fax || use qt4 ; then + myconf="${myconf} --enable-dbus-build" + else + myconf="${myconf} --disable-dbus-build" + fi + + if use libusb0 ; then + myconf="${myconf} --enable-libusb01_build" + else + myconf="${myconf} --disable-libusb01_build" + fi + + if use hpcups ; then + drv_build="$(use_enable hpcups hpcups-install)" + if use static-ppds ; then + drv_build="${drv_build} --enable-cups-ppd-install" + drv_build="${drv_build} --disable-cups-drv-install" + else + drv_build="${drv_build} --enable-cups-drv-install" + drv_build="${drv_build} --disable-cups-ppd-install" + fi + else + drv_build="--disable-hpcups-install" + drv_build="${drv_build} --disable-cups-drv-install" + drv_build="${drv_build} --disable-cups-ppd-install" + fi + + if use hpijs ; then + drv_build="${drv_build} $(use_enable hpijs hpijs-install)" + if use static-ppds ; then + drv_build="${drv_build} --enable-foomatic-ppd-install" + drv_build="${drv_build} --disable-foomatic-drv-install" + else + drv_build="${drv_build} --enable-foomatic-drv-install" + drv_build="${drv_build} --disable-foomatic-ppd-install" + fi + else + drv_build="${drv_build} --disable-hpijs-install" + drv_build="${drv_build} --disable-foomatic-drv-install" + drv_build="${drv_build} --disable-foomatic-ppd-install" + fi + + if use minimal ; then + if use hpijs ; then + minimal_build="--enable-hpijs-only-build" + else + minimal_build="--disable-hpijs-only-build" + fi + if use hpcups ; then + minimal_build="${minimal_build} --enable-hpcups-only-build" + else + minimal_build="${minimal_build} --disable-hpcups-only-build" + fi + fi + + econf \ + --disable-cups11-build \ + --disable-lite-build \ + --disable-foomatic-rip-hplip-install \ + --disable-shadow-build \ + --disable-qt3 \ + --disable-udev_sysfs_rules \ + --with-cupsbackenddir=$(cups-config --serverbin)/backend \ + --with-cupsfilterdir=$(cups-config --serverbin)/filter \ + --with-docdir=/usr/share/doc/${PF} \ + --with-htmldir=/usr/share/doc/${PF}/html \ + ${myconf} \ + ${drv_build} \ + ${minimal_build} \ + $(use_enable doc doc-build) \ + $(use_enable fax fax-build) \ + $(use_enable parport pp-build) \ + $(use_enable scanner scan-build) \ + $(use_enable snmp network-build) \ + $(use_enable qt4 gui-build) \ + $(use_enable qt4) \ + $(use_enable policykit) +} + +src_install() { + default + + # Installed by sane-backends + # Gentoo Bug: https://bugs.gentoo.org/show_bug.cgi?id=201023 + rm -f "${D}"/etc/sane.d/dll.conf || die + + rm -f "${D}"/usr/share/doc/${PF}/{copyright,README_LIBJPG,COPYING} || die + rmdir --ignore-fail-on-non-empty "${D}"/usr/share/doc/${PF}/ || die + + # Remove hal fdi files + rm -rf "${D}"/usr/share/hal || die + + prune_libtool_files --all + + if use !minimal ; then + python_export EPYTHON PYTHON + python_optimize "${D}"/usr/share/hplip + fi +} + +pkg_postinst() { + if [[ -z "${REPLACING_VERSIONS}" ]]; then + elog "For more information on setting up your printer please take" + elog "a look at the hplip section of the gentoo printing guide:" + elog "https://wiki.gentoo.org/wiki/Printing" + elog + elog "Any user who wants to print must be in the lp group." + elog + elog "Please note: Printers requiring a binary plugin are currently" + elog "not supported. All bugs regarding the plugin are most likely" + elog "closed. A bug about including the plugin package to gentoo is" + elog "available here: https://bugs.gentoo.org/352439" + fi +} diff --git a/net-print/hplip/hplip-3.15.6.ebuild b/net-print/hplip/hplip-3.15.6.ebuild new file mode 100644 index 000000000000..9e993be2d29b --- /dev/null +++ b/net-print/hplip/hplip-3.15.6.ebuild @@ -0,0 +1,260 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE="threads,xml" + +inherit eutils fdo-mime linux-info python-single-r1 udev autotools toolchain-funcs + +DESCRIPTION="HP Linux Imaging and Printing. Includes printer, scanner, fax drivers and service tools" +HOMEPAGE="http://hplipopensource.com/hplip-web/index.html" +SRC_URI="mirror://sourceforge/hplip/${P}.tar.gz + http://dev.gentoo.org/~billie/distfiles/${PN}-3.15.6-patches-1.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86" + +IUSE="doc fax +hpcups hpijs kde libnotify -libusb0 minimal parport policykit qt4 scanner snmp static-ppds X" + +COMMON_DEPEND=" + virtual/jpeg:0 + hpijs? ( + || ( >=net-print/cups-filters-1.0.43-r1[foomatic] >=net-print/foomatic-filters-3.0.20080507[cups] ) + ) + !minimal? ( + ${PYTHON_DEPS} + >=net-print/cups-1.4.0 + !libusb0? ( virtual/libusb:1 ) + libusb0? ( virtual/libusb:0 ) + scanner? ( >=media-gfx/sane-backends-1.0.19-r1 ) + fax? ( >=sys-apps/dbus-1.6.8-r1 ) + snmp? ( + net-analyzer/net-snmp + dev-libs/openssl:0 + ) + )" + +DEPEND="${COMMON_DEPEND} + virtual/pkgconfig" + +RDEPEND="${COMMON_DEPEND} + >=app-text/ghostscript-gpl-8.71-r3 + policykit? ( + sys-auth/polkit + ) + !minimal? ( + >=dev-python/dbus-python-1.1.1-r1[${PYTHON_USEDEP}] + >=dev-python/pygobject-2.28.6-r53:2[${PYTHON_USEDEP}] + kernel_linux? ( virtual/udev ) + scanner? ( + >=dev-python/reportlab-2.6[${PYTHON_USEDEP}] + >=virtual/python-imaging-1[${PYTHON_USEDEP}] + X? ( || ( + kde? ( kde-misc/skanlite ) + media-gfx/xsane + media-gfx/sane-frontends + ) ) + ) + fax? ( + >=dev-python/reportlab-2.6[${PYTHON_USEDEP}] + ) + qt4? ( + >=dev-python/PyQt4-4.9.6-r2[dbus,X,${PYTHON_USEDEP}] + libnotify? ( + >=dev-python/notify-python-0.1.1-r3[${PYTHON_USEDEP}] + ) + ) + )" + +REQUIRED_USE="!minimal? ( ${PYTHON_REQUIRED_USE} )" + +CONFIG_CHECK="~PARPORT ~PPDEV" +ERROR_PARPORT="Please make sure kernel parallel port support is enabled (PARPORT and PPDEV)." + +pkg_setup() { + use !minimal && python-single-r1_pkg_setup + + ! use qt4 && ewarn "You need USE=qt4 for the hplip GUI." + + use scanner && ! use X && ewarn "You need USE=X for the scanner GUI." + + if ! use hpcups && ! use hpijs ; then + ewarn "Installing neither hpcups (USE=-hpcups) nor hpijs (USE=-hpijs) driver," + ewarn "which is probably not what you want." + ewarn "You will almost certainly not be able to print." + fi + + if use minimal ; then + ewarn "Installing driver portions only, make sure you know what you are doing." + ewarn "Depending on the USE flags set for hpcups or hpijs the appropiate driver" + ewarn "is installed. If both USE flags are set hpijs overrides hpcups." + else + use parport && linux-info_pkg_setup + fi +} + +src_prepare() { + if use !minimal ; then + python_export EPYTHON PYTHON + python_fix_shebang . + fi + + EPATCH_SUFFIX="patch" \ + EPATCH_FORCE="yes" \ + epatch "${WORKDIR}" + + # Make desktop files follow the specification + # Gentoo bug: https://bugs.gentoo.org/show_bug.cgi?id=443680 + # Upstream bug: https://bugs.launchpad.net/hplip/+bug/1080324 + sed -i -e '/^Categories=/s/Application;//' \ + -e '/^Encoding=.*/d' hplip.desktop.in || die + sed -i -e '/^Categories=/s/Application;//' \ + -e '/^Version=.*/d' \ + -e '/^Comment=.*/d' hplip-systray.desktop.in || die + + # Fix for Gentoo bug https://bugs.gentoo.org/show_bug.cgi?id=345725 + # Upstream bug: https://bugs.launchpad.net/hplip/+bug/880847, + # https://bugs.launchpad.net/hplip/+bug/500086 + local udevdir=$(get_udevdir) + sed -i -e "s|/etc/udev|${udevdir}|g" \ + $(find . -type f -exec grep -l /etc/udev {} +) || die + + # Force recognition of Gentoo distro by hp-check + sed -i \ + -e "s:file('/etc/issue', 'r').read():'Gentoo':" \ + installer/core_install.py || die + + # Use system foomatic-rip for hpijs driver instead of foomatic-rip-hplip + # The hpcups driver does not use foomatic-rip + local i + for i in ppd/hpijs/*.ppd.gz ; do + rm -f ${i}.temp || die + gunzip -c ${i} | sed 's/foomatic-rip-hplip/foomatic-rip/g' | \ + gzip > ${i}.temp || die + mv ${i}.temp ${i} || die + done + + eautoreconf +} + +src_configure() { + local myconf drv_build minimal_build + + if use fax || use qt4 ; then + myconf="${myconf} --enable-dbus-build" + else + myconf="${myconf} --disable-dbus-build" + fi + + if use libusb0 ; then + myconf="${myconf} --enable-libusb01_build" + else + myconf="${myconf} --disable-libusb01_build" + fi + + if use hpcups ; then + drv_build="$(use_enable hpcups hpcups-install)" + if use static-ppds ; then + drv_build="${drv_build} --enable-cups-ppd-install" + drv_build="${drv_build} --disable-cups-drv-install" + else + drv_build="${drv_build} --enable-cups-drv-install" + drv_build="${drv_build} --disable-cups-ppd-install" + fi + else + drv_build="--disable-hpcups-install" + drv_build="${drv_build} --disable-cups-drv-install" + drv_build="${drv_build} --disable-cups-ppd-install" + fi + + if use hpijs ; then + drv_build="${drv_build} $(use_enable hpijs hpijs-install)" + if use static-ppds ; then + drv_build="${drv_build} --enable-foomatic-ppd-install" + drv_build="${drv_build} --disable-foomatic-drv-install" + else + drv_build="${drv_build} --enable-foomatic-drv-install" + drv_build="${drv_build} --disable-foomatic-ppd-install" + fi + else + drv_build="${drv_build} --disable-hpijs-install" + drv_build="${drv_build} --disable-foomatic-drv-install" + drv_build="${drv_build} --disable-foomatic-ppd-install" + fi + + if use minimal ; then + if use hpijs ; then + minimal_build="--enable-hpijs-only-build" + else + minimal_build="--disable-hpijs-only-build" + fi + if use hpcups ; then + minimal_build="${minimal_build} --enable-hpcups-only-build" + else + minimal_build="${minimal_build} --disable-hpcups-only-build" + fi + fi + + econf \ + --disable-cups11-build \ + --disable-lite-build \ + --disable-foomatic-rip-hplip-install \ + --disable-shadow-build \ + --disable-qt3 \ + --disable-udev_sysfs_rules \ + --with-cupsbackenddir=$(cups-config --serverbin)/backend \ + --with-cupsfilterdir=$(cups-config --serverbin)/filter \ + --with-docdir=/usr/share/doc/${PF} \ + --with-htmldir=/usr/share/doc/${PF}/html \ + ${myconf} \ + ${drv_build} \ + ${minimal_build} \ + $(use_enable doc doc-build) \ + $(use_enable fax fax-build) \ + $(use_enable parport pp-build) \ + $(use_enable scanner scan-build) \ + $(use_enable snmp network-build) \ + $(use_enable qt4 gui-build) \ + $(use_enable qt4) \ + $(use_enable policykit) +} + +src_install() { + default + + # Installed by sane-backends + # Gentoo Bug: https://bugs.gentoo.org/show_bug.cgi?id=201023 + rm -f "${D}"/etc/sane.d/dll.conf || die + + rm -f "${D}"/usr/share/doc/${PF}/{copyright,README_LIBJPG,COPYING} || die + rmdir --ignore-fail-on-non-empty "${D}"/usr/share/doc/${PF}/ || die + + # Remove hal fdi files + rm -rf "${D}"/usr/share/hal || die + + prune_libtool_files --all + + if use !minimal ; then + python_export EPYTHON PYTHON + python_optimize "${D}"/usr/share/hplip + fi +} + +pkg_postinst() { + if [[ -z "${REPLACING_VERSIONS}" ]]; then + elog "For more information on setting up your printer please take" + elog "a look at the hplip section of the gentoo printing guide:" + elog "https://wiki.gentoo.org/wiki/Printing" + elog + elog "Any user who wants to print must be in the lp group." + elog + elog "Please note: Printers requiring a binary plugin are currently" + elog "not supported. All bugs regarding the plugin are most likely" + elog "closed. A bug about including the plugin package to gentoo is" + elog "available here: https://bugs.gentoo.org/352439" + fi +} diff --git a/net-print/hplip/hplip-3.15.7.ebuild b/net-print/hplip/hplip-3.15.7.ebuild new file mode 100644 index 000000000000..9e993be2d29b --- /dev/null +++ b/net-print/hplip/hplip-3.15.7.ebuild @@ -0,0 +1,260 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE="threads,xml" + +inherit eutils fdo-mime linux-info python-single-r1 udev autotools toolchain-funcs + +DESCRIPTION="HP Linux Imaging and Printing. Includes printer, scanner, fax drivers and service tools" +HOMEPAGE="http://hplipopensource.com/hplip-web/index.html" +SRC_URI="mirror://sourceforge/hplip/${P}.tar.gz + http://dev.gentoo.org/~billie/distfiles/${PN}-3.15.6-patches-1.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86" + +IUSE="doc fax +hpcups hpijs kde libnotify -libusb0 minimal parport policykit qt4 scanner snmp static-ppds X" + +COMMON_DEPEND=" + virtual/jpeg:0 + hpijs? ( + || ( >=net-print/cups-filters-1.0.43-r1[foomatic] >=net-print/foomatic-filters-3.0.20080507[cups] ) + ) + !minimal? ( + ${PYTHON_DEPS} + >=net-print/cups-1.4.0 + !libusb0? ( virtual/libusb:1 ) + libusb0? ( virtual/libusb:0 ) + scanner? ( >=media-gfx/sane-backends-1.0.19-r1 ) + fax? ( >=sys-apps/dbus-1.6.8-r1 ) + snmp? ( + net-analyzer/net-snmp + dev-libs/openssl:0 + ) + )" + +DEPEND="${COMMON_DEPEND} + virtual/pkgconfig" + +RDEPEND="${COMMON_DEPEND} + >=app-text/ghostscript-gpl-8.71-r3 + policykit? ( + sys-auth/polkit + ) + !minimal? ( + >=dev-python/dbus-python-1.1.1-r1[${PYTHON_USEDEP}] + >=dev-python/pygobject-2.28.6-r53:2[${PYTHON_USEDEP}] + kernel_linux? ( virtual/udev ) + scanner? ( + >=dev-python/reportlab-2.6[${PYTHON_USEDEP}] + >=virtual/python-imaging-1[${PYTHON_USEDEP}] + X? ( || ( + kde? ( kde-misc/skanlite ) + media-gfx/xsane + media-gfx/sane-frontends + ) ) + ) + fax? ( + >=dev-python/reportlab-2.6[${PYTHON_USEDEP}] + ) + qt4? ( + >=dev-python/PyQt4-4.9.6-r2[dbus,X,${PYTHON_USEDEP}] + libnotify? ( + >=dev-python/notify-python-0.1.1-r3[${PYTHON_USEDEP}] + ) + ) + )" + +REQUIRED_USE="!minimal? ( ${PYTHON_REQUIRED_USE} )" + +CONFIG_CHECK="~PARPORT ~PPDEV" +ERROR_PARPORT="Please make sure kernel parallel port support is enabled (PARPORT and PPDEV)." + +pkg_setup() { + use !minimal && python-single-r1_pkg_setup + + ! use qt4 && ewarn "You need USE=qt4 for the hplip GUI." + + use scanner && ! use X && ewarn "You need USE=X for the scanner GUI." + + if ! use hpcups && ! use hpijs ; then + ewarn "Installing neither hpcups (USE=-hpcups) nor hpijs (USE=-hpijs) driver," + ewarn "which is probably not what you want." + ewarn "You will almost certainly not be able to print." + fi + + if use minimal ; then + ewarn "Installing driver portions only, make sure you know what you are doing." + ewarn "Depending on the USE flags set for hpcups or hpijs the appropiate driver" + ewarn "is installed. If both USE flags are set hpijs overrides hpcups." + else + use parport && linux-info_pkg_setup + fi +} + +src_prepare() { + if use !minimal ; then + python_export EPYTHON PYTHON + python_fix_shebang . + fi + + EPATCH_SUFFIX="patch" \ + EPATCH_FORCE="yes" \ + epatch "${WORKDIR}" + + # Make desktop files follow the specification + # Gentoo bug: https://bugs.gentoo.org/show_bug.cgi?id=443680 + # Upstream bug: https://bugs.launchpad.net/hplip/+bug/1080324 + sed -i -e '/^Categories=/s/Application;//' \ + -e '/^Encoding=.*/d' hplip.desktop.in || die + sed -i -e '/^Categories=/s/Application;//' \ + -e '/^Version=.*/d' \ + -e '/^Comment=.*/d' hplip-systray.desktop.in || die + + # Fix for Gentoo bug https://bugs.gentoo.org/show_bug.cgi?id=345725 + # Upstream bug: https://bugs.launchpad.net/hplip/+bug/880847, + # https://bugs.launchpad.net/hplip/+bug/500086 + local udevdir=$(get_udevdir) + sed -i -e "s|/etc/udev|${udevdir}|g" \ + $(find . -type f -exec grep -l /etc/udev {} +) || die + + # Force recognition of Gentoo distro by hp-check + sed -i \ + -e "s:file('/etc/issue', 'r').read():'Gentoo':" \ + installer/core_install.py || die + + # Use system foomatic-rip for hpijs driver instead of foomatic-rip-hplip + # The hpcups driver does not use foomatic-rip + local i + for i in ppd/hpijs/*.ppd.gz ; do + rm -f ${i}.temp || die + gunzip -c ${i} | sed 's/foomatic-rip-hplip/foomatic-rip/g' | \ + gzip > ${i}.temp || die + mv ${i}.temp ${i} || die + done + + eautoreconf +} + +src_configure() { + local myconf drv_build minimal_build + + if use fax || use qt4 ; then + myconf="${myconf} --enable-dbus-build" + else + myconf="${myconf} --disable-dbus-build" + fi + + if use libusb0 ; then + myconf="${myconf} --enable-libusb01_build" + else + myconf="${myconf} --disable-libusb01_build" + fi + + if use hpcups ; then + drv_build="$(use_enable hpcups hpcups-install)" + if use static-ppds ; then + drv_build="${drv_build} --enable-cups-ppd-install" + drv_build="${drv_build} --disable-cups-drv-install" + else + drv_build="${drv_build} --enable-cups-drv-install" + drv_build="${drv_build} --disable-cups-ppd-install" + fi + else + drv_build="--disable-hpcups-install" + drv_build="${drv_build} --disable-cups-drv-install" + drv_build="${drv_build} --disable-cups-ppd-install" + fi + + if use hpijs ; then + drv_build="${drv_build} $(use_enable hpijs hpijs-install)" + if use static-ppds ; then + drv_build="${drv_build} --enable-foomatic-ppd-install" + drv_build="${drv_build} --disable-foomatic-drv-install" + else + drv_build="${drv_build} --enable-foomatic-drv-install" + drv_build="${drv_build} --disable-foomatic-ppd-install" + fi + else + drv_build="${drv_build} --disable-hpijs-install" + drv_build="${drv_build} --disable-foomatic-drv-install" + drv_build="${drv_build} --disable-foomatic-ppd-install" + fi + + if use minimal ; then + if use hpijs ; then + minimal_build="--enable-hpijs-only-build" + else + minimal_build="--disable-hpijs-only-build" + fi + if use hpcups ; then + minimal_build="${minimal_build} --enable-hpcups-only-build" + else + minimal_build="${minimal_build} --disable-hpcups-only-build" + fi + fi + + econf \ + --disable-cups11-build \ + --disable-lite-build \ + --disable-foomatic-rip-hplip-install \ + --disable-shadow-build \ + --disable-qt3 \ + --disable-udev_sysfs_rules \ + --with-cupsbackenddir=$(cups-config --serverbin)/backend \ + --with-cupsfilterdir=$(cups-config --serverbin)/filter \ + --with-docdir=/usr/share/doc/${PF} \ + --with-htmldir=/usr/share/doc/${PF}/html \ + ${myconf} \ + ${drv_build} \ + ${minimal_build} \ + $(use_enable doc doc-build) \ + $(use_enable fax fax-build) \ + $(use_enable parport pp-build) \ + $(use_enable scanner scan-build) \ + $(use_enable snmp network-build) \ + $(use_enable qt4 gui-build) \ + $(use_enable qt4) \ + $(use_enable policykit) +} + +src_install() { + default + + # Installed by sane-backends + # Gentoo Bug: https://bugs.gentoo.org/show_bug.cgi?id=201023 + rm -f "${D}"/etc/sane.d/dll.conf || die + + rm -f "${D}"/usr/share/doc/${PF}/{copyright,README_LIBJPG,COPYING} || die + rmdir --ignore-fail-on-non-empty "${D}"/usr/share/doc/${PF}/ || die + + # Remove hal fdi files + rm -rf "${D}"/usr/share/hal || die + + prune_libtool_files --all + + if use !minimal ; then + python_export EPYTHON PYTHON + python_optimize "${D}"/usr/share/hplip + fi +} + +pkg_postinst() { + if [[ -z "${REPLACING_VERSIONS}" ]]; then + elog "For more information on setting up your printer please take" + elog "a look at the hplip section of the gentoo printing guide:" + elog "https://wiki.gentoo.org/wiki/Printing" + elog + elog "Any user who wants to print must be in the lp group." + elog + elog "Please note: Printers requiring a binary plugin are currently" + elog "not supported. All bugs regarding the plugin are most likely" + elog "closed. A bug about including the plugin package to gentoo is" + elog "available here: https://bugs.gentoo.org/352439" + fi +} diff --git a/net-print/hplip/metadata.xml b/net-print/hplip/metadata.xml new file mode 100644 index 000000000000..36375d8c02c9 --- /dev/null +++ b/net-print/hplip/metadata.xml @@ -0,0 +1,28 @@ + + + + printing + + billie@gentoo.org + Daniel Pielmeier + + + Build documentation + Enable fax on multifunction devices which support it + Build the hpcups driver for cups (by HP) + Build the IJS driver for cups (Foomatic) + Enables kde-misc/skanlite as scanner GUI with USE="scanner X" + Enables desktop notifications + Depend on virtual/libusb:0. Some old printers do not work with virtual/libusb:1 + Only build internal hpijs/hpcups driver (not recommended at all, make sure you know what you are doing) + Enable parallel port for devices which require it + Enable graphical interface using Qt 4 + Enable scanner on multifunction devices which support it + Add support for net-analyzer/net-snmp which enables this driver to work over networks (both for server and client) + Use statically-generated PPDs instead of Dynamic PPDs. Although this is deprecated some printers may still need it to work properly. Use this flag if hp-setup fails to find/create a valid PPD file + Enables scanner GUI dependencies with USE="scanner" where media-gfx/xsane is preferred over media-gfx/sane-frontends + + + hplip + + -- cgit v1.2.3-65-gdbad