summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-print')
-rw-r--r--net-print/adobeps/Manifest14
-rw-r--r--net-print/adobeps/adobeps-1.0.6-r1.ebuild90
-rw-r--r--net-print/adobeps/metadata.xml7
-rw-r--r--net-print/apsfilter/Manifest2
-rw-r--r--net-print/apsfilter/apsfilter-7.2.5.ebuild40
-rw-r--r--net-print/apsfilter/apsfilter-7.2.8.ebuild43
-rw-r--r--net-print/apsfilter/metadata.xml5
-rw-r--r--net-print/c2esp/Manifest2
-rw-r--r--net-print/c2esp/c2esp-25c.ebuild53
-rw-r--r--net-print/c2esp/c2esp-26.ebuild53
-rw-r--r--net-print/c2esp/files/c2esp-24-ldflags-cppflags.patch32
-rw-r--r--net-print/c2esp/files/c2esp-25c-ldflags-cppflags.patch32
-rw-r--r--net-print/c2esp/files/c2esp-26-ldflags-cppflags.patch33
-rw-r--r--net-print/c2esp/metadata.xml12
-rw-r--r--net-print/cndrvcups-common-lb/Manifest1
-rw-r--r--net-print/cndrvcups-common-lb/cndrvcups-common-lb-2.90.ebuild112
-rw-r--r--net-print/cndrvcups-common-lb/metadata.xml8
-rw-r--r--net-print/cndrvcups-lb/Manifest1
-rw-r--r--net-print/cndrvcups-lb/cndrvcups-lb-2.90.ebuild109
-rw-r--r--net-print/cndrvcups-lb/metadata.xml8
-rw-r--r--net-print/cups-bjnp/Manifest3
-rw-r--r--net-print/cups-bjnp/cups-bjnp-1.1.ebuild17
-rw-r--r--net-print/cups-bjnp/cups-bjnp-1.2.1.ebuild21
-rw-r--r--net-print/cups-bjnp/cups-bjnp-2.0.ebuild21
-rw-r--r--net-print/cups-bjnp/metadata.xml8
-rw-r--r--net-print/cups-filters/Manifest2
-rw-r--r--net-print/cups-filters/cups-filters-1.0.66.ebuild120
-rw-r--r--net-print/cups-filters/cups-filters-1.0.71.ebuild122
-rw-r--r--net-print/cups-filters/cups-filters-9999.ebuild120
-rw-r--r--net-print/cups-filters/files/cups-browsed.init.d20
-rw-r--r--net-print/cups-filters/files/cups-browsed.service10
-rw-r--r--net-print/cups-filters/files/cups-filters-1.0.53-uclibc.patch16
-rw-r--r--net-print/cups-filters/files/cups-filters-1.0.65-poppler0310.patch65
-rw-r--r--net-print/cups-filters/files/cups-filters-1.0.71-poppler0340.patch38
-rw-r--r--net-print/cups-filters/metadata.xml10
-rw-r--r--net-print/cups-pdf/Manifest2
-rw-r--r--net-print/cups-pdf/cups-pdf-2.6.1.ebuild47
-rw-r--r--net-print/cups-pdf/cups-pdf-3.0_beta1.ebuild47
-rw-r--r--net-print/cups-pdf/metadata.xml5
-rw-r--r--net-print/cups-pk-helper/Manifest2
-rw-r--r--net-print/cups-pk-helper/cups-pk-helper-0.2.4-r1.ebuild39
-rw-r--r--net-print/cups-pk-helper/cups-pk-helper-0.2.5.ebuild43
-rw-r--r--net-print/cups-pk-helper/files/cups-pk-helper-0.2.4-revert-stricter.patch55
-rw-r--r--net-print/cups-pk-helper/metadata.xml5
-rw-r--r--net-print/cups-windows/Manifest1
-rw-r--r--net-print/cups-windows/cups-windows-6.0-r1.ebuild24
-rw-r--r--net-print/cups-windows/metadata.xml5
-rw-r--r--net-print/cups/Manifest3
-rw-r--r--net-print/cups/cups-2.0.1-r1.ebuild358
-rw-r--r--net-print/cups/cups-2.0.2-r1.ebuild358
-rw-r--r--net-print/cups/cups-2.0.3.ebuild358
-rw-r--r--net-print/cups/cups-9999.ebuild354
-rw-r--r--net-print/cups/files/cups-1.4.4-nostrip.patch14
-rw-r--r--net-print/cups/files/cups-1.6.0-dont-compress-manpages.patch19
-rw-r--r--net-print/cups/files/cups-1.6.0-fix-install-perms.patch25
-rw-r--r--net-print/cups/files/cups-1.7.2-systemd-socket-2.patch391
-rw-r--r--net-print/cups/files/cups-2.0.0-rename-systemd-service-files.patch177
-rw-r--r--net-print/cups/files/cups-2.0.1-fix-compilation.patch25
-rw-r--r--net-print/cups/files/cups-2.0.1-fix-linkage-to-gnutls.patch24
-rw-r--r--net-print/cups/files/cups-2.0.1-rename-systemd-service-files.patch73
-rw-r--r--net-print/cups/files/cups-2.0.1-xinetd-installation-fix.patch9
-rw-r--r--net-print/cups/files/cups-2.0.2-poll-CPU-loop-STR-4605.patch48
-rw-r--r--net-print/cups/files/cups-2.0.2-rename-systemd-service-files.patch46
-rw-r--r--net-print/cups/files/cups-2.0.2-systemd-socket.patch60
-rw-r--r--net-print/cups/files/cupsd.init.d-r126
-rw-r--r--net-print/cups/metadata.xml16
-rw-r--r--net-print/dymo-cups-drivers/Manifest2
-rw-r--r--net-print/dymo-cups-drivers/dymo-cups-drivers-1.2.0.ebuild40
-rw-r--r--net-print/dymo-cups-drivers/dymo-cups-drivers-1.4.0.ebuild40
-rw-r--r--net-print/dymo-cups-drivers/files/dymo-cups-drivers-1.2.0+gcc-4.6.patch48
-rw-r--r--net-print/dymo-cups-drivers/files/dymo-cups-drivers-1.2.0-cxxflags.patch15
-rw-r--r--net-print/dymo-cups-drivers/metadata.xml7
-rw-r--r--net-print/epson-inkjet-printer-escpr/Manifest1
-rw-r--r--net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.4.4.ebuild32
-rw-r--r--net-print/epson-inkjet-printer-escpr/files/1.4.4-warnings.patch43
-rw-r--r--net-print/epson-inkjet-printer-escpr/metadata.xml8
-rw-r--r--net-print/fax4cups/Manifest1
-rw-r--r--net-print/fax4cups/fax4cups-1.29-r1.ebuild50
-rw-r--r--net-print/fax4cups/metadata.xml10
-rw-r--r--net-print/foo2zjs/files/foo2zjs-udev.patch12
-rw-r--r--net-print/foo2zjs/files/foo2zjs-usbbackend.patch12
-rw-r--r--net-print/foo2zjs/foo2zjs-99999999.ebuild77
-rw-r--r--net-print/foo2zjs/metadata.xml5
-rw-r--r--net-print/foomatic-db-engine/Manifest2
-rw-r--r--net-print/foomatic-db-engine/files/4.0.7-perl-module.patch13
-rw-r--r--net-print/foomatic-db-engine/files/4.0.7-respect-ldflag.patch15
-rw-r--r--net-print/foomatic-db-engine/foomatic-db-engine-4.0.11.ebuild59
-rw-r--r--net-print/foomatic-db-engine/foomatic-db-engine-4.0.12.ebuild59
-rw-r--r--net-print/foomatic-db-engine/metadata.xml5
-rw-r--r--net-print/foomatic-db-ppds/Manifest2
-rw-r--r--net-print/foomatic-db-ppds/files/Makefile.in-4.0.20120117.patch24
-rw-r--r--net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20140105.ebuild30
-rw-r--r--net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20141025.ebuild29
-rw-r--r--net-print/foomatic-db-ppds/metadata.xml5
-rw-r--r--net-print/foomatic-db/Manifest2
-rw-r--r--net-print/foomatic-db/foomatic-db-4.0.20140105.ebuild42
-rw-r--r--net-print/foomatic-db/foomatic-db-4.0.20141025.ebuild41
-rw-r--r--net-print/foomatic-db/metadata.xml5
-rw-r--r--net-print/foomatic-filters/Manifest1
-rw-r--r--net-print/foomatic-filters/files/foomatic-filters-4.0.9-multilib.patch41
-rw-r--r--net-print/foomatic-filters/foomatic-filters-4.0.17-r1.ebuild66
-rw-r--r--net-print/foomatic-filters/metadata.xml5
-rw-r--r--net-print/foomatic-gui/Manifest1
-rw-r--r--net-print/foomatic-gui/foomatic-gui-0.7.9.5-r1.ebuild36
-rw-r--r--net-print/foomatic-gui/metadata.xml8
-rw-r--r--net-print/gmso2/Manifest1
-rw-r--r--net-print/gmso2/gmso2-0.1-r1.ebuild42
-rw-r--r--net-print/gmso2/metadata.xml11
-rw-r--r--net-print/gtklp/Manifest3
-rw-r--r--net-print/gtklp/gtklp-1.3.0.ebuild48
-rw-r--r--net-print/gtklp/gtklp-1.3.1.ebuild48
-rw-r--r--net-print/gtklp/metadata.xml14
-rw-r--r--net-print/gutenprint/Manifest2
-rw-r--r--net-print/gutenprint/files/gutenprint-5.2.10-genppd.patch23
-rw-r--r--net-print/gutenprint/files/gutenprint-5.2.4-CFLAGS.patch24
-rw-r--r--net-print/gutenprint/files/gutenprint-5.2.8-genppd.patch23
-rw-r--r--net-print/gutenprint/gutenprint-5.2.10.ebuild96
-rw-r--r--net-print/gutenprint/gutenprint-5.2.9.ebuild96
-rw-r--r--net-print/gutenprint/metadata.xml8
-rw-r--r--net-print/hplip/Manifest5
-rw-r--r--net-print/hplip/hplip-3.14.10.ebuild266
-rw-r--r--net-print/hplip/hplip-3.15.6.ebuild260
-rw-r--r--net-print/hplip/hplip-3.15.7.ebuild260
-rw-r--r--net-print/hplip/metadata.xml28
-rw-r--r--net-print/ink/Manifest2
-rw-r--r--net-print/ink/ink-0.5.1.ebuild22
-rw-r--r--net-print/ink/ink-0.5.2.ebuild22
-rw-r--r--net-print/ink/metadata.xml8
-rw-r--r--net-print/kyocera-mita-ppds/Manifest1
-rw-r--r--net-print/kyocera-mita-ppds/kyocera-mita-ppds-8.4.ebuild61
-rw-r--r--net-print/kyocera-mita-ppds/metadata.xml7
-rw-r--r--net-print/libgnomecups/Manifest1
-rw-r--r--net-print/libgnomecups/files/enablenet.patch11
-rw-r--r--net-print/libgnomecups/files/libgnomecups-0.2.3-cups-1.6.patch285
-rw-r--r--net-print/libgnomecups/files/libgnomecups-0.2.3-cups-config.patch34
-rw-r--r--net-print/libgnomecups/files/libgnomecups-0.2.3-format-string.patch34
-rw-r--r--net-print/libgnomecups/files/libgnomecups-0.2.3-g_list_find_custom.patch94
-rw-r--r--net-print/libgnomecups/files/libgnomecups-0.2.3-glib.h.patch38
-rw-r--r--net-print/libgnomecups/files/libgnomecups-0.2.3-lpoptions.patch13
-rw-r--r--net-print/libgnomecups/files/libgnomecups-0.2.3-pkgconfig.patch10
-rw-r--r--net-print/libgnomecups/libgnomecups-0.2.3-r3.ebuild50
-rw-r--r--net-print/libgnomecups/libgnomecups-0.2.3-r5.ebuild65
-rw-r--r--net-print/libgnomecups/metadata.xml6
-rw-r--r--net-print/libinklevel/Manifest4
-rw-r--r--net-print/libinklevel/files/libinklevel-0.8.0-automagicdebug.patch20
-rw-r--r--net-print/libinklevel/libinklevel-0.8.0-r1.ebuild39
-rw-r--r--net-print/libinklevel/libinklevel-0.9.0.ebuild39
-rw-r--r--net-print/libinklevel/libinklevel-0.9.1.ebuild39
-rw-r--r--net-print/libinklevel/libinklevel-0.9.2.ebuild39
-rw-r--r--net-print/libinklevel/metadata.xml8
-rw-r--r--net-print/lm1100/Manifest2
-rw-r--r--net-print/lm1100/files/lm1100-1.0.2a-class.patch24
-rw-r--r--net-print/lm1100/files/lm1100-1.0.2a-fix-compile-gcc-3.4.patch22
-rw-r--r--net-print/lm1100/files/lm1100-1.0.2a-fix-compile-gcc-4.1.patch73
-rw-r--r--net-print/lm1100/files/lm1100-1.0.2a-makefile.patch35
-rw-r--r--net-print/lm1100/files/lm1100maint-firmware.patch14
-rw-r--r--net-print/lm1100/lm1100-1.0.2a-r1.ebuild46
-rw-r--r--net-print/lm1100/metadata.xml8
-rw-r--r--net-print/lprng/Manifest1
-rw-r--r--net-print/lprng/files/lprng-3.8.27-certs.diff38
-rw-r--r--net-print/lprng/files/lprng-3.8.28-krb.diff11
-rw-r--r--net-print/lprng/files/lprng-3.8.28-lpq.diff11
-rw-r--r--net-print/lprng/files/lprng-3.8.28-make.diff11
-rw-r--r--net-print/lprng/files/lprng-init39
-rw-r--r--net-print/lprng/files/printcap24
-rw-r--r--net-print/lprng/lprng-3.8.35-r2.ebuild80
-rw-r--r--net-print/lprng/metadata.xml9
-rw-r--r--net-print/magicfilter/Manifest1
-rw-r--r--net-print/magicfilter/files/magicfilter-2.3d-glibc-2.10.patch100
-rw-r--r--net-print/magicfilter/files/magicfilter-2.3h-configure.patch59
-rw-r--r--net-print/magicfilter/files/magicfilter-2.3h-makefile.patch75
-rw-r--r--net-print/magicfilter/magicfilter-2.3h.ebuild44
-rw-r--r--net-print/magicfilter/metadata.xml8
-rw-r--r--net-print/metadata.xml33
-rw-r--r--net-print/mtink/Manifest1
-rw-r--r--net-print/mtink/files/mtink-1.0.16-options.patch39
-rw-r--r--net-print/mtink/files/mtink-1.0.16-overflow.patch11
-rw-r--r--net-print/mtink/files/mtinkd.confd15
-rw-r--r--net-print/mtink/files/mtinkd.rc20
-rw-r--r--net-print/mtink/metadata.xml7
-rw-r--r--net-print/mtink/mtink-1.0.16-r1.ebuild77
-rw-r--r--net-print/npadmin/Manifest1
-rw-r--r--net-print/npadmin/files/npadmin-0.8.7-stdlib.patch10
-rw-r--r--net-print/npadmin/metadata.xml8
-rw-r--r--net-print/npadmin/npadmin-0.8.7.ebuild30
-rw-r--r--net-print/pkpgcounter/Manifest1
-rw-r--r--net-print/pkpgcounter/metadata.xml12
-rw-r--r--net-print/pkpgcounter/pkpgcounter-3.50-r1.ebuild34
-rw-r--r--net-print/pnm2ppa/Manifest1
-rw-r--r--net-print/pnm2ppa/files/pnm2ppa-1.12-gentoo.diff180
-rw-r--r--net-print/pnm2ppa/metadata.xml8
-rw-r--r--net-print/pnm2ppa/pnm2ppa-1.13-r1.ebuild78
-rw-r--r--net-print/poster/Manifest1
-rw-r--r--net-print/poster/metadata.xml5
-rw-r--r--net-print/poster/poster-20060221.ebuild26
-rw-r--r--net-print/pykota/Manifest1
-rw-r--r--net-print/pykota/metadata.xml13
-rw-r--r--net-print/pykota/pykota-1.26.ebuild72
-rw-r--r--net-print/splix/Manifest3
-rw-r--r--net-print/splix/metadata.xml14
-rw-r--r--net-print/splix/splix-2.0.0_p20111206.ebuild72
-rw-r--r--net-print/splix/splix-2.0.0_p20130826.ebuild63
-rw-r--r--net-print/sshlpr/Manifest1
-rw-r--r--net-print/sshlpr/metadata.xml8
-rw-r--r--net-print/sshlpr/sshlpr-1.ebuild27
-rw-r--r--net-print/xerox-drivers/Manifest1
-rw-r--r--net-print/xerox-drivers/metadata.xml9
-rw-r--r--net-print/xerox-drivers/xerox-drivers-0_p20080123.ebuild32
208 files changed, 8662 insertions, 0 deletions
diff --git a/net-print/adobeps/Manifest b/net-print/adobeps/Manifest
new file mode 100644
index 000000000000..542155d518f6
--- /dev/null
+++ b/net-print/adobeps/Manifest
@@ -0,0 +1,14 @@
+DIST Winstchs.exe 7763014 SHA256 4af84c26ad901cde09571930b7d228dfc88327711b5360f6441147443afcbcad
+DIST winstDan.exe 7815273 SHA256 a95c420208cb90be6d741214c56d130793eaad415a6fcece120516c993f5340f
+DIST winstbrz.exe 7820627 SHA256 4585b2749e1bc227cabcfebdd1729183deb769ba4c18f12df58defc59545559d
+DIST winstdut.exe 7835281 SHA256 bd82ad3616c3572262c03590832f19cd872afb07b8eea4e6540d33a6906ac815
+DIST winsteng.exe 7740765 SHA256 45a66f17f7c34e268fac4f40e829a3fb676c50d137e38fdee225ee1bcda189d0 SHA512 4da2460a85b9d86acdef20ed564ca1e19213f125487ec197eae9c88caf540fce123d2c2decf32978c2a3e55f52a5441cacd7826a7e916557087678532296f889 WHIRLPOOL 0206472a1ac133ddfa967f6c42e8c6399a428f5b01df65ff71e3b8b5d4cb761c09073ccf0779cf1c3ac1a9b1dbf8929d442e3bca89ba380982efd9b8fb41453d
+DIST winstfin.exe 7821985 SHA256 ecd28749632525287b562817580eea81e3cdef31c585d8a81a25bdca013e79d7
+DIST winstfre.exe 7834972 SHA256 60a47b14c43c5da5b29a5af064f6fa1bccce8c19d574cfde49b538d9f58a8866
+DIST winstger.exe 7849748 SHA256 15990b737acd3c0b5eb7c7c1829c82c7cf061e7d86d9e9ac171c5a4adc06158e SHA512 99a7d9fc2dd2968b59a96700db7ebd8ca467eb5a4d2e0596829758090aad264ab9acdcf82cc4cf359b018b6f337b8b80a99c82ff393f885b96e7b28880f2a2cc WHIRLPOOL 8373f6437be45cc6879222d88bd398494c9e8da46fa1d9e410978643bb5f8b24a9835b32c27a0a0c8acc079e829cb0e6d57cb8cf900b52763a369fa0679ef320
+DIST winstita.exe 7839874 SHA256 9bb47ecb4918596668475ca716e417ca6e502df305c84a99ab6a4746ebea5d49
+DIST winstjpn.exe 7852247 SHA256 c08e8ed2c7bf366932f95267e829f8aae1cf52b7193bd0f6877b80db357ec79a
+DIST winstkor.exe 7794202 SHA256 4faef9c08136cd5658d8961786e7ad6494189401c028c369d88340638cd1fe8a
+DIST winstnor.exe 7827002 SHA256 55171e86fff838bd056b1964c9e1f7ef07ced81e30dc7f41b464390852998c11
+DIST winstspa.exe 7839771 SHA256 7930f5dd895e29670ec98f63155df09f55adb4b4a7b0cfe833a8cb3365cf3993
+DIST winstswe.exe 7803620 SHA256 f2d7b2f15048e21a69b0d31e3fa19d275a6a132d7c95e03420be39c11828d103
diff --git a/net-print/adobeps/adobeps-1.0.6-r1.ebuild b/net-print/adobeps/adobeps-1.0.6-r1.ebuild
new file mode 100644
index 000000000000..e6b0f8dcebfd
--- /dev/null
+++ b/net-print/adobeps/adobeps-1.0.6-r1.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils
+
+DESCRIPTION="Adobe PostScript drivers for Windows for use with CUPS"
+HOMEPAGE="http://www.adobe.com/support/downloads/product.jsp?product=44&platform=Windows"
+SRC_URI_BASE="ftp://ftp.adobe.com/pub/adobe/printerdrivers/win/1.x"
+SRC_URI=""
+
+LICENSE="AdobePS"
+RESTRICT="mirror"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="cups"
+
+DEPEND="app-arch/cabextract"
+RDEPEND="cups? ( >=net-print/cups-1.2 )"
+
+IUSE_LINGUAS=( en da de es fi fr it ja ko nl no pt_BR se zh_CN )
+IUSE_FILES=( winsteng winstDan winstger winstspa winstfin winstfre winstita
+ winstjpn winstkor winstdut winstnor winstbrz winstswe Winstchs ) # winstcht
+
+IUSE_LANGS=""
+IUSE_CLOSE=""
+for ((X=0; X < ${#IUSE_LINGUAS[*]}; X++)); do
+ IUSE="${IUSE} linguas_${IUSE_LINGUAS[X]}"
+ SRC_URI="${SRC_URI} linguas_${IUSE_LINGUAS[X]}? ( ${SRC_URI_BASE}/${IUSE_FILES[X]}.exe )"
+ IUSE_LANGS="${IUSE_LANGS} !linguas_${IUSE_LINGUAS[X]}? ("
+ IUSE_CLOSE="${IUSE_CLOSE} )"
+done
+SRC_URI="${SRC_URI} ${IUSE_LANGS} ${SRC_URI_BASE}/${IUSE_FILES[0]}.exe${IUSE_CLOSE}"
+
+S="${WORKDIR}"
+
+pkg_setup() {
+ local X L=""
+ ADOBEPS_LANG=""
+ for X in ${LINGUAS}; do
+ if [[ " ${IUSE_LINGUAS[*]} " =~ " ${X} " ]]; then
+ [ -z "${ADOBEPS_LANG}" ] && ADOBEPS_LANG="${X}"
+ L="${L} ${X}"
+ fi
+ done
+ if [ -z "${ADOBEPS_LANG}" ]; then
+ L="${IUSE_LINGUAS[0]}"; ADOBEPS_LANG="${L}"
+ fi
+ elog "Selected languages:" ${L}
+ use cups && elog "CUPS drivers language: ${ADOBEPS_LANG}"
+}
+
+src_unpack() {
+ local X L
+ for ((X=0; X < ${#IUSE_LINGUAS[*]}; X++)); do
+ L="${IUSE_LINGUAS[X]}"
+ if use linguas_${L} || [ "${L}" = "${ADOBEPS_LANG}" ]; then
+ cabextract -Lq -d "${S}/${IUSE_LINGUAS[X]}" \
+ "${DISTDIR}/${IUSE_FILES[X]}.exe" || die "unpack failed"
+ fi
+ done
+}
+
+src_install() {
+ local X
+ for X in ${IUSE_LINGUAS[*]}; do
+ if use linguas_${X} || [ "${X}" = "${ADOBEPS_LANG}" ]; then
+ # files and filenames taken from cupsaddsmb man-page
+ insinto "/usr/share/${PN}/${X}"
+ # Windows 2000 and higher
+ doins ${X}/winxp/{ps5ui.dll,pscript.hlp,pscript.ntf,pscript5.dll}
+ # Windows 95, 98, and Me
+ newins ${X}/windows/adfonts.mfm ADFONTS.MFM
+ newins ${X}/windows/adobeps4.drv ADOBEPS4.DRV
+ newins ${X}/windows/adobeps4.hlp ADOBEPS4.HLP
+ newins ${X}/windows/iconlib.dll ICONLIB.DLL
+ newins ${X}/windows/psmon.dll PSMON.DLL
+ fi
+ done
+ # symlink primary language to cups drivers
+ if use cups; then
+ dodir /usr/share/cups/drivers
+ for X in ps5ui.dll pscript.hlp pscript.ntf pscript5.dll \
+ ADFONTS.MFM ADOBEPS4.DRV ADOBEPS4.HLP ICONLIB.DLL PSMON.DLL; do
+ dosym "../../${PN}/${ADOBEPS_LANG}/${X}" "/usr/share/cups/drivers/${X}"
+ done
+ fi
+}
diff --git a/net-print/adobeps/metadata.xml b/net-print/adobeps/metadata.xml
new file mode 100644
index 000000000000..91f4e72fb544
--- /dev/null
+++ b/net-print/adobeps/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+ </maintainer>
+</pkgmetadata>
diff --git a/net-print/apsfilter/Manifest b/net-print/apsfilter/Manifest
new file mode 100644
index 000000000000..ad89e86ed802
--- /dev/null
+++ b/net-print/apsfilter/Manifest
@@ -0,0 +1,2 @@
+DIST apsfilter-7.2.5.tar.bz2 309436 SHA256 06fcd09080122c42d8ae7435f4065ea104b81268703498446e8e49f176ce949a
+DIST apsfilter-7.2.8.tar.bz2 310587 SHA256 9fb814b1d08725e318f200b06ab722eb72b218b56beb17d7ad3ab7bae835e2e9 SHA512 ca07e7eb620a95b08fb912e899520d5ff85613eb3d1f712e1d38a66cf5b84516dbb35e3e40ef75ac10d1e717cfc2f49930a0f0873fee451d495c8ae572072012 WHIRLPOOL 89196b120338cf3665d95768ce11e8357675f9dd89fa8f34e589dbf083c2646b926d2082f1bca63eb5cefe6e84861d4ef9fc26f8952c9e3cbc21601941bf6297
diff --git a/net-print/apsfilter/apsfilter-7.2.5.ebuild b/net-print/apsfilter/apsfilter-7.2.5.ebuild
new file mode 100644
index 000000000000..7727e55fe55e
--- /dev/null
+++ b/net-print/apsfilter/apsfilter-7.2.5.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Apsfilter Prints So Fine, It Leads To Extraordinary Results"
+HOMEPAGE="http://www.apsfilter.org"
+KEYWORDS="x86 ppc alpha sparc"
+IUSE="cups"
+SLOT="0"
+LICENSE="GPL-2"
+
+RDEPEND="|| ( net-print/cups net-print/lprng )
+ app-text/ghostscript-gpl
+ >=app-text/psutils-1.17
+ >=media-gfx/imagemagick-5.4.5
+ >=app-text/a2ps-4.13b-r4
+ virtual/awk
+ virtual/mta"
+DEPEND="${RDEPEND}"
+
+SRC_URI="http://www.apsfilter.org/download/${P}.tar.bz2"
+S=${WORKDIR}/apsfilter
+
+src_compile() {
+ # assume thet lprng is installed if cups isn't USEd
+ use cups && \
+ myconf="--with-printcap=/etc/cups/printcap --with-spooldir=/var/spool/cups" || \
+ myconf="--with-printcap=/etc/lprng/printcap"
+ ./configure --prefix=/usr ${myconf} || die
+
+ emake || die
+}
+
+src_install () {
+ emake DESTDIR="${D}" install || die
+ dosym /usr/share/apsfilter/SETUP /usr/bin/apsfilter
+ use cups && \
+ dosym /etc/cups/printcap /etc/printcap || \
+ dosym /etc/lprng/printcap /etc/printcap
+}
diff --git a/net-print/apsfilter/apsfilter-7.2.8.ebuild b/net-print/apsfilter/apsfilter-7.2.8.ebuild
new file mode 100644
index 000000000000..86bfaee35f11
--- /dev/null
+++ b/net-print/apsfilter/apsfilter-7.2.8.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+DESCRIPTION="Apsfilter Prints So Fine, It Leads To Extraordinary Results"
+HOMEPAGE="http://www.apsfilter.org"
+SRC_URI="http://www.apsfilter.org/download/${P}.tar.bz2"
+KEYWORDS="~alpha ~amd64 ~ppc ~sparc ~x86"
+IUSE="cups"
+SLOT="0"
+LICENSE="GPL-2"
+
+RDEPEND="|| ( net-print/cups net-print/lprng )
+ app-text/ghostscript-gpl
+ >=app-text/psutils-1.17
+ || ( media-gfx/imagemagick media-gfx/graphicsmagick[imagemagick] )
+ >=app-text/a2ps-4.13b-r4
+ virtual/awk
+ virtual/mta"
+DEPEND="${RDEPEND}"
+
+S=${WORKDIR}/${PN}
+
+src_configure() {
+ # assume thet lprng is installed if cups isn't USEd
+ use cups && \
+ myconf="--with-printcap=/etc/cups/printcap --with-spooldir=/var/spool/cups" || \
+ myconf="--with-printcap=/etc/lprng/printcap"
+
+ # econf doesn't work here :(
+ ./configure --prefix=/usr --mandir=/usr/share/man \
+ --docdir=/usr/share/doc/${PF} --sysconfdir=/etc ${myconf} || die
+}
+
+src_install () {
+ emake DESTDIR="${D}" install
+ dosym /usr/share/apsfilter/SETUP /usr/bin/apsfilter
+ use cups && \
+ dosym /etc/cups/printcap /etc/printcap || \
+ dosym /etc/lprng/printcap /etc/printcap
+}
diff --git a/net-print/apsfilter/metadata.xml b/net-print/apsfilter/metadata.xml
new file mode 100644
index 000000000000..1fa0ca569505
--- /dev/null
+++ b/net-print/apsfilter/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>printing</herd>
+</pkgmetadata>
diff --git a/net-print/c2esp/Manifest b/net-print/c2esp/Manifest
new file mode 100644
index 000000000000..c48aaba5530b
--- /dev/null
+++ b/net-print/c2esp/Manifest
@@ -0,0 +1,2 @@
+DIST c2esp25c.tar.gz 338047 SHA256 5627086e5579fad4bcb2eef42d388c3118c630db32f63e11b5016d046baef521 SHA512 788da75c0049c1aa445890d67a7088bc4e7aa5c4e3e67689677fa5bee0e17e29fbb6e7ba9397aaec99f43ba79043aca7d147b6c510e3dd472d238ce6e2636b12 WHIRLPOOL 5446a704e4116c152978864dd35a509df5f0bb30d6d0b6574a14522b2b92601b3623fe97b2f319c81fa86bc68635cfa9b12f9902961cd31936dc286eb9d6764b
+DIST c2esp26.tar.gz 127593 SHA256 9c1427ca9a7374b2dc052953084f5c1a3675ec6842ea77b8e2ae86fa3bfa5856 SHA512 aa1ca61f895de4892e1058b349fcf1830da78455ffbd0d9989b7ac4e922076e184de91a2b79f285d946d29ece7a6d8159f62c900ed8d6c76859a4261c92da359 WHIRLPOOL 32fea85eeeece5b0ea84ca6291fc1a0102c783ecfe6e8f1f4d059ed7f3a26031ccb70cb2d0bc6667a4914d1eac228241a4c949b7a1bc4a3e81d8f42baa6be874
diff --git a/net-print/c2esp/c2esp-25c.ebuild b/net-print/c2esp/c2esp-25c.ebuild
new file mode 100644
index 000000000000..4934dc4a568d
--- /dev/null
+++ b/net-print/c2esp/c2esp-25c.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils toolchain-funcs
+
+MY_P=${PN}${PV}
+
+DESCRIPTION="A cups filter for Kodak ESP printers"
+HOMEPAGE="http://cupsdriverkodak.sf.net/"
+SRC_URI="mirror://sourceforge/cupsdriverkodak/files/${MY_P}.tar.gz"
+LICENSE="GPL-2"
+
+SLOT="0"
+KEYWORDS="~x86"
+IUSE=""
+
+S=${WORKDIR}/${MY_P}
+
+DEPEND=">=media-libs/jbigkit-2.0-r1
+ >=net-print/cups-1.4"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-ldflags-cppflags.patch
+
+ # Remove embedded media-libs/jbigkit
+ rm -f *jbig* || die
+
+ # Remove the embedded jbig files from the Makefile's dependencies:
+ sed -i \
+ -e '/^[a-z0-9.]*:/s/\$(LIBJBG[[:digit:]]*)//g' \
+ -e '/^[a-z0-9.]*:/s/jbig[^ ]*\.h//g' \
+ -e '/\$(INSTALL).*COPYING/d' \
+ Makefile || die
+
+ # Use Gentoo-style cups paths
+ sed -i -e s,/usr/lib/cups/filter,/usr/libexec/cups/filter,g ppd/*.ppd || die
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)" LIBJBG=-ljbig LIBJBG85=-ljbig85
+}
+
+src_install() {
+ emake \
+ DESTDIR="${D}" \
+ FILTERBIN="${D}"/usr/libexec/cups/filter \
+ DOCDIR="${ED}"/usr/share/doc/${PF} \
+ install
+}
diff --git a/net-print/c2esp/c2esp-26.ebuild b/net-print/c2esp/c2esp-26.ebuild
new file mode 100644
index 000000000000..dbd45ef6bf2e
--- /dev/null
+++ b/net-print/c2esp/c2esp-26.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs
+
+MY_P=${PN}${PV}
+
+DESCRIPTION="A cups filter for Kodak ESP printers"
+HOMEPAGE="http://cupsdriverkodak.sf.net/"
+SRC_URI="mirror://sourceforge/cupsdriverkodak/files/${MY_P}.tar.gz"
+LICENSE="GPL-2"
+
+SLOT="0"
+KEYWORDS="~x86"
+IUSE=""
+
+S=${WORKDIR}/${MY_P}
+
+DEPEND=">=media-libs/jbigkit-2.0-r1
+ >=net-print/cups-1.4"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-ldflags-cppflags.patch
+
+ # Remove embedded media-libs/jbigkit
+ rm -f *jbig* || die
+
+ # Remove the embedded jbig files from the Makefile's dependencies:
+ sed -i \
+ -e '/^[a-z0-9.]*:/s/\$(LIBJBG[[:digit:]]*)//g' \
+ -e '/^[a-z0-9.]*:/s/jbig[^ ]*\.h//g' \
+ -e '/\$(INSTALL).*COPYING/d' \
+ Makefile || die
+
+ # Use Gentoo-style cups paths
+ sed -i -e s,/usr/lib/cups/filter,/usr/libexec/cups/filter,g ppd/*.ppd || die
+}
+
+src_compile() {
+ emake -j1 CC="$(tc-getCC)" LIBJBG=-ljbig LIBJBG85=-ljbig85
+}
+
+src_install() {
+ emake \
+ DESTDIR="${D}" \
+ FILTERBIN="${D}"/usr/libexec/cups/filter \
+ DOCDIR="${ED}"/usr/share/doc/${PF} \
+ install
+}
diff --git a/net-print/c2esp/files/c2esp-24-ldflags-cppflags.patch b/net-print/c2esp/files/c2esp-24-ldflags-cppflags.patch
new file mode 100644
index 000000000000..f1059c465330
--- /dev/null
+++ b/net-print/c2esp/files/c2esp-24-ldflags-cppflags.patch
@@ -0,0 +1,32 @@
+--- a/Makefile
++++ b/Makefile
+@@ -166,16 +166,16 @@
+ @echo
+
+ c2esp: c2esp.o c2espcommon.o $(LIBJBG85)
+- $(CC) $(CFLAGS) -o $@ c2esp.o c2espcommon.o -lcupsimage -lcups -lcupsdriver $(LIBJBG85)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ c2esp.o c2espcommon.o -lcupsimage -lcups -lcupsdriver $(LIBJBG85)
+
+ c2espC: c2espC.o c2espcommon.o
+- $(CC) $(CFLAGS) -o $@ c2espC.o c2espcommon.o -lcupsimage -lcups -lcupsdriver -lz
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ c2espC.o c2espcommon.o -lcupsimage -lcups -lcupsdriver -lz
+
+ command2esp: command2esp.o c2espcommon.o
+- $(CC) $(CFLAGS) -o $@ command2esp.o c2espcommon.o -lcups -lcupsdriver
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ command2esp.o c2espcommon.o -lcups -lcupsdriver
+
+ myopldecode: myopldecode.o $(LIBJBG)
+- $(CC) $(CFLAGS) -o $@ $@.o $(LIBJBG) -lz
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $@.o $(LIBJBG) -lz
+
+ #
+ # Installation rules
+@@ -326,3 +326,8 @@
+ #
+ ppdc KodakESP_10.drv
+ ppdc KodakESP_C_06.drv
++
++# Respect CPPFLAGS.
++.SUFFIXES: .c .o
++.c.o:
++ $(CC) -c $(CFLAGS) $(CPPFLAGS) -o '$@' '$<'
diff --git a/net-print/c2esp/files/c2esp-25c-ldflags-cppflags.patch b/net-print/c2esp/files/c2esp-25c-ldflags-cppflags.patch
new file mode 100644
index 000000000000..a551cc0f46ab
--- /dev/null
+++ b/net-print/c2esp/files/c2esp-25c-ldflags-cppflags.patch
@@ -0,0 +1,32 @@
+--- a/Makefile
++++ b/Makefile
+@@ -166,16 +166,16 @@
+ @echo
+
+ c2esp: c2esp.o c2espcommon.o $(LIBJBG85)
+- $(CC) $(CFLAGS) -o $@ c2esp.o c2espcommon.o -lcupsimage -lcups -lcupsdriver $(LIBJBG85)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ c2esp.o c2espcommon.o -lcupsimage -lcups -lcupsdriver $(LIBJBG85)
+
+ c2espC: c2espC.o c2espcommon.o
+- $(CC) $(CFLAGS) -o $@ c2espC.o c2espcommon.o -lcupsimage -lcups -lcupsdriver -lz
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ c2espC.o c2espcommon.o -lcupsimage -lcups -lcupsdriver -lz
+
+ command2esp: command2esp.o c2espcommon.o
+- $(CC) $(CFLAGS) -o $@ command2esp.o c2espcommon.o -lcups -lcupsdriver
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ command2esp.o c2espcommon.o -lcups -lcupsdriver
+
+ myopldecode: myopldecode.o $(LIBJBG)
+- $(CC) $(CFLAGS) -o $@ $@.o $(LIBJBG) -lz
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $@.o $(LIBJBG) -lz
+
+ #
+ # Installation rules
+@@ -351,3 +326,8 @@
+ command2esp.o: c2espcommon.h
+ c2espcommon.o: c2espcommon.h
+
++
++# Respect CPPFLAGS.
++.SUFFIXES: .c .o
++.c.o:
++ $(CC) -c $(CFLAGS) $(CPPFLAGS) -o '$@' '$<'
diff --git a/net-print/c2esp/files/c2esp-26-ldflags-cppflags.patch b/net-print/c2esp/files/c2esp-26-ldflags-cppflags.patch
new file mode 100644
index 000000000000..1ea36482687d
--- /dev/null
+++ b/net-print/c2esp/files/c2esp-26-ldflags-cppflags.patch
@@ -0,0 +1,33 @@
+diff -Naur a/Makefile b/Makefile
+--- a/Makefile 2012-09-06 00:18:06.000000000 +0100
++++ b/Makefile 2013-08-01 19:56:01.884969274 +0100
+@@ -234,16 +234,16 @@
+ @echo
+
+ c2esp: c2esp.o c2espcommon.o $(LIBJBG85)
+- $(CC) $(CFLAGS) -o $@ c2esp.o c2espcommon.o $(LIBCUPSDRIVER) $(LIBCUPSIMAGE) $(LIBJBG85)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ c2esp.o c2espcommon.o $(LIBCUPSDRIVER) $(LIBCUPSIMAGE) $(LIBJBG85)
+
+ c2espC: c2espC.o c2espcommon.o
+- $(CC) $(CFLAGS) -o $@ c2espC.o c2espcommon.o $(LIBCUPSDRIVER) $(LIBCUPSIMAGE) -lz
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ c2espC.o c2espcommon.o $(LIBCUPSDRIVER) $(LIBCUPSIMAGE) -lz
+
+ command2esp: command2esp.o c2espcommon.o
+- $(CC) $(CFLAGS) -o $@ command2esp.o c2espcommon.o $(LIBCUPSDRIVER)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ command2esp.o c2espcommon.o $(LIBCUPSDRIVER)
+
+ myopldecode: myopldecode.o $(LIBJBG)
+- $(CC) $(CFLAGS) -o $@ $@.o $(LIBJBG) -lz
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $@.o $(LIBJBG) -lz
+
+ #
+ # Installation rules
+@@ -403,3 +403,8 @@
+ command2esp.o: c2espcommon.h
+ c2espcommon.o: c2espcommon.h
+
++# Respect CPPFLAGS.
++.SUFFIXES: .c .o
++.c.o:
++ $(CC) -c $(CFLAGS) $(CPPFLAGS) -o '$@' '$<'
++
diff --git a/net-print/c2esp/metadata.xml b/net-print/c2esp/metadata.xml
new file mode 100644
index 000000000000..dd23d29d0696
--- /dev/null
+++ b/net-print/c2esp/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+ <maintainer>
+ <email>binki@gentoo.org</email>
+ <name>Nathan Phillip Brink</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">cupsdriverkodak</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-print/cndrvcups-common-lb/Manifest b/net-print/cndrvcups-common-lb/Manifest
new file mode 100644
index 000000000000..19c82e7cf3db
--- /dev/null
+++ b/net-print/cndrvcups-common-lb/Manifest
@@ -0,0 +1 @@
+DIST Linux_UFRII_PrinterDriver_V290_uk_EN.tar.gz 90901373 SHA256 bcc9db26e261d239438aeb15f171b5b0e7fd305abd0729be0e806bb4c039654a SHA512 23181155f5719fa0a9c216c058be749b5faaa8ee745d260eba2e5e284ef4ff161e344289a7c301a2d74cc919c5031763b0daf41cd07686cfdce188492a9b34b2 WHIRLPOOL 82bb966d823f8019d6275d421ebd2ff848556415e1767bd8fc2638d97479e15029a48818e5b45e9210781f4f37fd269dde46763404314b6c47ee0b4670e03600
diff --git a/net-print/cndrvcups-common-lb/cndrvcups-common-lb-2.90.ebuild b/net-print/cndrvcups-common-lb/cndrvcups-common-lb-2.90.ebuild
new file mode 100644
index 000000000000..22c2b5e4a239
--- /dev/null
+++ b/net-print/cndrvcups-common-lb/cndrvcups-common-lb-2.90.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools multilib versionator
+
+MY_PV="$(delete_all_version_separators)"
+SOURCES_NAME="Linux_UFRII_PrinterDriver_V${MY_PV}_uk_EN"
+
+DESCRIPTION="Common files for Canon drivers"
+HOMEPAGE="http://support-au.canon.com.au/contents/AU/EN/0100270808.html"
+SRC_URI="http://pdisp01.c-wss.com/gdl/WWUFORedirectTarget.do?id=MDEwMDAwMjcwODEx&cmp=ABS&lang=EN -> ${SOURCES_NAME}.tar.gz"
+
+LICENSE="Canon-UFR-II GPL-2 MIT"
+SLOT="0"
+KEYWORDS="-* amd64 x86"
+IUSE=""
+
+# Needed because GPL2 stuff miss their sources in tarball
+RESTRICT="mirror"
+
+RDEPEND="
+ dev-libs/libxml2
+ gnome-base/libglade
+ net-print/cups
+ x11-libs/gtk+:2
+"
+DEPEND="${DEPEND}"
+
+S="${WORKDIR}/${SOURCES_NAME}/Sources/${P/-lb/}"
+
+# Don't raise a fuss over pre-built binaries
+QA_PREBUILT="
+ /usr/libexec/cups/filter/c3pldrv
+ /usr/$(get_abi_LIBDIR x86)/libColorGear.so.0.0.0
+ /usr/$(get_abi_LIBDIR x86)/libColorGearC.so.0.0.0
+ /usr/$(get_abi_LIBDIR x86)/libc3pl.so.0.0.1
+ /usr/$(get_abi_LIBDIR x86)/libcaepcm.so.1.0
+ /usr/$(get_abi_LIBDIR x86)/libcaiousb.so.1.0.0
+ /usr/$(get_abi_LIBDIR x86)/libcaiowrap.so.1.0.0
+ /usr/$(get_abi_LIBDIR x86)/libcanon_slim.so.1.0.0
+ /usr/$(get_libdir)/libcanonc3pl.so.1.0.0
+"
+QA_SONAME="/usr/$(get_abi_LIBDIR x86)/libcaiousb.so.1.0.0"
+
+src_unpack() {
+ unpack ${A}
+ cd "${WORKDIR}/${SOURCES_NAME}/Sources/"
+ unpack ./${P/-lb/}-1.tar.gz
+}
+
+change_dir() {
+ for i in cngplp buftool backend; do
+ cd "${i}"
+ "${@}"
+ cd "${S}"
+ done
+}
+
+src_prepare() {
+ sed -i -e \
+ "s:backenddir = \$(libdir)/cups/backend:backenddir = `cups-config --serverbin`/backend:" \
+ backend/Makefile.am || die
+
+ export "LIBS=-lgmodule-2.0"
+ change_dir eautoreconf
+}
+
+src_configure() {
+ change_dir econf
+}
+
+src_compile() {
+ change_dir emake
+
+ # Cannot be moved to 'change_dir' as it doesn't need eautoreconf
+ cd "${S}/c3plmod_ipc" && emake
+}
+
+src_install() {
+ MAKEOPTS+=" -j1" default
+
+ einstalldocs
+
+ cd "${S}/c3plmod_ipc"
+ dolib.so libcanonc3pl.so.1.0.0
+ dosym libcanonc3pl.so.1.0.0 "/usr/$(get_libdir)/libcanonc3pl.so.1"
+ dosym libcanonc3pl.so.1.0.0 "/usr/$(get_libdir)/libcanonc3pl.so"
+
+ cd "${S}/data"
+ insinto /usr/share/caepcm
+ doins *
+
+ ABI=x86
+ cd "${S}/libs"
+ exeinto $(cups-config --serverbin)/filter
+ doexe c3pldrv
+ dolib.so libcaepcm.so.1.0
+ dosym libcaepcm.so.1.0 "/usr/$(get_libdir)/libcaepcm.so.1"
+ dosym libcaepcm.so.1.0 "/usr/$(get_libdir)/libcaepcm.so"
+ for lib in *.so.?.?.?; do
+ dolib.so "${lib}"
+ dosym "${lib}" "/usr/$(get_libdir)/${lib%.?.?}"
+ dosym "${lib}" "/usr/$(get_libdir)/${lib%.?.?.?}"
+ done
+
+ # c3pldrv dlopens the absolute path /usr/lib/libc3pl.so :(
+ if [[ "$(get_libdir)" != lib ]]; then
+ dosym "../$(get_libdir)/libc3pl.so" /usr/lib/libc3pl.so
+ fi
+}
diff --git a/net-print/cndrvcups-common-lb/metadata.xml b/net-print/cndrvcups-common-lb/metadata.xml
new file mode 100644
index 000000000000..cc36239ea2e6
--- /dev/null
+++ b/net-print/cndrvcups-common-lb/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>pacho@gentoo.org</email>
+ <name>Pacho Ramos</name>
+</maintainer>
+</pkgmetadata>
diff --git a/net-print/cndrvcups-lb/Manifest b/net-print/cndrvcups-lb/Manifest
new file mode 100644
index 000000000000..19c82e7cf3db
--- /dev/null
+++ b/net-print/cndrvcups-lb/Manifest
@@ -0,0 +1 @@
+DIST Linux_UFRII_PrinterDriver_V290_uk_EN.tar.gz 90901373 SHA256 bcc9db26e261d239438aeb15f171b5b0e7fd305abd0729be0e806bb4c039654a SHA512 23181155f5719fa0a9c216c058be749b5faaa8ee745d260eba2e5e284ef4ff161e344289a7c301a2d74cc919c5031763b0daf41cd07686cfdce188492a9b34b2 WHIRLPOOL 82bb966d823f8019d6275d421ebd2ff848556415e1767bd8fc2638d97479e15029a48818e5b45e9210781f4f37fd269dde46763404314b6c47ee0b4670e03600
diff --git a/net-print/cndrvcups-lb/cndrvcups-lb-2.90.ebuild b/net-print/cndrvcups-lb/cndrvcups-lb-2.90.ebuild
new file mode 100644
index 000000000000..4f6fe633c1e3
--- /dev/null
+++ b/net-print/cndrvcups-lb/cndrvcups-lb-2.90.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils autotools multilib versionator
+
+MY_PV="$(delete_all_version_separators)"
+SOURCES_NAME="Linux_UFRII_PrinterDriver_V${MY_PV}_uk_EN"
+
+DESCRIPTION="Canon UFR II / LIPSLX Printer Driver for Linux"
+HOMEPAGE="http://support-au.canon.com.au/contents/AU/EN/0100270808.html"
+SRC_URI="http://pdisp01.c-wss.com/gdl/WWUFORedirectTarget.do?id=MDEwMDAwMjcwODEx&cmp=ABS&lang=EN -> ${SOURCES_NAME}.tar.gz"
+
+LICENSE="Canon-UFR-II"
+SLOT="0"
+KEYWORDS="-* amd64 x86"
+IUSE=""
+
+# Needed because GPL2 stuff miss their sources in tarball
+RESTRICT="mirror"
+
+RDEPEND="
+ gnome-base/libglade
+ net-print/cups
+ ~net-print/cndrvcups-common-lb-${PV}
+ x11-libs/gtk+:2
+ >=dev-libs/libxml2-2.9.1-r4[abi_x86_32(-)]
+ virtual/jpeg:62[abi_x86_32(-)]
+"
+DEPEND="${DEPEND}"
+
+S="${WORKDIR}/${SOURCES_NAME}/Sources/${P}"
+MAKEOPTS+=" -j1"
+
+# Don't raise a fuss over pre-built binaries
+QA_PREBUILT="
+ /usr/bin/cnpkbidi
+ /usr/bin/cnpkmoduleufr2
+ /usr/$(get_abi_LIBDIR x86)/libEnoJPEG.so.1.0.0
+ /usr/$(get_abi_LIBDIR x86)/libEnoJBIG.so.1.0.0
+ /usr/$(get_abi_LIBDIR x86)/libufr2filter.so.1.0.0
+ /usr/$(get_abi_LIBDIR x86)/libcnlbcm.so.1.0
+ /usr/$(get_abi_LIBDIR x86)/libcaiocnpkbidi.so.1.0.0
+ /usr/$(get_abi_LIBDIR x86)/libcanonufr2.so.1.0.0
+"
+QA_SONAME="/usr/$(get_abi_LIBDIR x86)/libcaiocnpkbidi.so.1.0.0"
+
+src_unpack() {
+ unpack ${A}
+ cd "${WORKDIR}/${SOURCES_NAME}/Sources/"
+ unpack ./${P}-1.tar.gz
+}
+
+change_dir() {
+ for i in ppd pstoufr2cpca cngplp cngplp/files cpca ; do
+ cd "${i}"
+ "${@}"
+ cd "${S}"
+ done
+}
+
+src_prepare() {
+ sed -i -e \
+ "s:filterdir = \$(libdir)/cups/filter:filterdir = `cups-config --serverbin`/filter:" \
+ pstoufr2cpca/filter/Makefile.am || die
+
+ export "LIBS=-lgmodule-2.0"
+ change_dir eautoreconf
+}
+
+src_configure() {
+ change_dir econf
+}
+
+src_install() {
+ default
+
+ einstalldocs
+
+ prune_libtool_files
+
+ cd "${S}/data"
+ insinto /usr/share/caepcm
+ doins *
+
+ cd "${S}/libs"
+ insinto /usr/share/cnpkbidi
+ doins cnpkbidi_info*
+
+ insinto /usr/share/ufr2filter
+ doins ThLB*
+
+ ABI=x86
+ dobin cnpkbidi cnpkmoduleufr2
+ dolib.so libcnlbcm.so.1.0
+ dosym libcnlbcm.so.1.0 "/usr/$(get_libdir)/libcnlbcm.so.1"
+ dosym libcnlbcm.so.1.0 "/usr/$(get_libdir)/libcnlbcm.so"
+ for lib in *.so.?.?.?; do
+ dolib.so "${lib}"
+ dosym "${lib}" "/usr/$(get_libdir)/${lib%.?.?}"
+ dosym "${lib}" "/usr/$(get_libdir)/${lib%.?.?.?}"
+ done
+
+ # c3pldrv dlopens the absolute path /usr/lib/libcnlbcm.so :(
+ if [[ "$(get_libdir)" != lib ]]; then
+ dosym "../$(get_libdir)/libcnlbcm.so" /usr/lib/libcnlbcm.so
+ fi
+}
diff --git a/net-print/cndrvcups-lb/metadata.xml b/net-print/cndrvcups-lb/metadata.xml
new file mode 100644
index 000000000000..cc36239ea2e6
--- /dev/null
+++ b/net-print/cndrvcups-lb/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>pacho@gentoo.org</email>
+ <name>Pacho Ramos</name>
+</maintainer>
+</pkgmetadata>
diff --git a/net-print/cups-bjnp/Manifest b/net-print/cups-bjnp/Manifest
new file mode 100644
index 000000000000..768316587afd
--- /dev/null
+++ b/net-print/cups-bjnp/Manifest
@@ -0,0 +1,3 @@
+DIST cups-bjnp-1.1.tar.gz 139838 SHA256 db6be8ae2e8db63fe70ca0e3c64b119fd7ba83687e1c314c5e7b61622cab6f83 SHA512 9a1558c7f2530e14ecab3143e0e03239d430d261486309cbf12f28a43b6358e704f60fdbcfeb0150b3ca80d31bf03b0c628179fbf37d313ca23d2f6e1d28265d WHIRLPOOL 173e1f81eeb39415845e66c4c7bac8de9a6f71f257ead546112500bf08f5d9ee37f975d66b408e449039bc3528b54c17fd8e593d0d36d7c9c2829e7329483267
+DIST cups-bjnp-1.2.1.tar.gz 140536 SHA256 bda4ff2a9e9f673018374b75b1cf6f67f5aef3025a3a08d2c9ccf15a2bb8573a SHA512 c14152592255f9092d543f00f67a8fdd71cc9b27bc12cc6e66d3d94e1112920feafba35b7f7a830b07666b9b2d8d070f52757a3e150195e71ec989985a74d489 WHIRLPOOL 35ab78c1c73987fdccc45421616046ff4987dbbf183c262e23fcbe373baa5244016e0cf8a1df0ab80919ada34d3adbd0f8bc2b4268a3d8ddf97ebe5341ff9f74
+DIST cups-bjnp-2.0.tar.gz 140617 SHA256 2acb716680d66f1378cf8dcd45fedf7f72ccc9b66fa80214d6dcb042b5e3c9ab SHA512 60b7c58828c736eab6986896730db7635d3364e94d6d7c4992eb7f49f22ced6a5643153c069d3823d4dc663ee7de8748b8e8ec527e04afc65389c521b791c8d0 WHIRLPOOL 217e8cce22cb8ea4390dfedbaa5d5f37e8c5cab79f3b25924fd05eeec3e39b29e85a4732182f508daa8a379ebd4d0ced8b59038c6a538b366ac156250127243c
diff --git a/net-print/cups-bjnp/cups-bjnp-1.1.ebuild b/net-print/cups-bjnp/cups-bjnp-1.1.ebuild
new file mode 100644
index 000000000000..a83bfc2796e0
--- /dev/null
+++ b/net-print/cups-bjnp/cups-bjnp-1.1.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="CUPS backend for the canon printers using the proprietary USB over IP BJNP protocol"
+HOMEPAGE="http://sourceforge.net/projects/cups-bjnp/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+DEPEND="net-print/cups"
+RDEPEND="${DEPEND}"
diff --git a/net-print/cups-bjnp/cups-bjnp-1.2.1.ebuild b/net-print/cups-bjnp/cups-bjnp-1.2.1.ebuild
new file mode 100644
index 000000000000..141e4ba5671a
--- /dev/null
+++ b/net-print/cups-bjnp/cups-bjnp-1.2.1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="CUPS backend for the canon printers using the proprietary USB over IP BJNP protocol"
+HOMEPAGE="http://sourceforge.net/projects/cups-bjnp/"
+SRC_URI="mirror://sourceforge/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+DEPEND="net-print/cups"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ econf --disable-Werror
+}
diff --git a/net-print/cups-bjnp/cups-bjnp-2.0.ebuild b/net-print/cups-bjnp/cups-bjnp-2.0.ebuild
new file mode 100644
index 000000000000..141e4ba5671a
--- /dev/null
+++ b/net-print/cups-bjnp/cups-bjnp-2.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="CUPS backend for the canon printers using the proprietary USB over IP BJNP protocol"
+HOMEPAGE="http://sourceforge.net/projects/cups-bjnp/"
+SRC_URI="mirror://sourceforge/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+DEPEND="net-print/cups"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ econf --disable-Werror
+}
diff --git a/net-print/cups-bjnp/metadata.xml b/net-print/cups-bjnp/metadata.xml
new file mode 100644
index 000000000000..88a6a6da2e3b
--- /dev/null
+++ b/net-print/cups-bjnp/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+ <upstream>
+ <remote-id type="sourceforge">cups-bjnp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-print/cups-filters/Manifest b/net-print/cups-filters/Manifest
new file mode 100644
index 000000000000..fbae5cc01b9a
--- /dev/null
+++ b/net-print/cups-filters/Manifest
@@ -0,0 +1,2 @@
+DIST cups-filters-1.0.66.tar.xz 1335740 SHA256 a46eea35d8c151f1f63c663c5dda290ba11a7f5951d48dba485a02f9146dfb1c SHA512 275d704a52889fd0f18b9c1ed5aad70efd0df3b0beac30fca5467135d9c9b0ccc0ea7e3d1274086cf475c4a569262edc85962b5076df3ba2e9d3fe4d2c376fa2 WHIRLPOOL 040fe61f197187913c90e42a26ada1957e9289854627af3cceff984027fb630417b9e8548e3ca7d713a74ad0074389459a41de3bc7579438335a84e30a694ba5
+DIST cups-filters-1.0.71.tar.xz 1339116 SHA256 3180aa209c383402822e568ccef8e1ca43f51e30b3af2039c34ebae919a69c1f SHA512 dc243e88d535c8d7e7fd53074b1093a46fc22742504efa09096d2b216846df875e4d914f25d2f726034692538cfdf1b713bc1ef44d199003a21e242b99f44a01 WHIRLPOOL 4afc7079594563f57af81501192cc0cba19db6cd5c10a9544339858a343e245b485e528fbf80eecd711341b23b8321bde817c49db7ddd2f0b801da2b4b9c580d
diff --git a/net-print/cups-filters/cups-filters-1.0.66.ebuild b/net-print/cups-filters/cups-filters-1.0.66.ebuild
new file mode 100644
index 000000000000..9a43edca5149
--- /dev/null
+++ b/net-print/cups-filters/cups-filters-1.0.66.ebuild
@@ -0,0 +1,120 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+GENTOO_DEPEND_ON_PERL=no
+
+inherit base eutils perl-module autotools systemd
+
+if [[ "${PV}" == "9999" ]] ; then
+ inherit bzr
+ EBZR_REPO_URI="http://bzr.linuxfoundation.org/openprinting/cups-filters"
+ KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sparc x86"
+else
+ SRC_URI="http://www.openprinting.org/download/${PN}/${P}.tar.xz"
+ KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-fbsd ~m68k-mint"
+fi
+DESCRIPTION="Cups PDF filters"
+HOMEPAGE="http://www.linuxfoundation.org/collaborate/workgroups/openprinting/pdfasstandardprintjobformat"
+
+LICENSE="MIT GPL-2"
+SLOT="0"
+IUSE="dbus +foomatic jpeg perl png static-libs tiff zeroconf"
+
+RDEPEND="
+ >=app-text/ghostscript-gpl-9.09
+ app-text/poppler:=[cxx,jpeg?,lcms,tiff?,xpdf-headers(+)]
+ >=app-text/qpdf-3.0.2:=
+ media-libs/fontconfig
+ media-libs/freetype:2
+ media-libs/lcms:2
+ >=net-print/cups-1.7.3
+ !<=net-print/cups-1.5.9999
+ sys-devel/bc
+ sys-libs/zlib
+ dbus? ( sys-apps/dbus )
+ foomatic? ( !net-print/foomatic-filters )
+ jpeg? ( virtual/jpeg:0 )
+ perl? ( dev-lang/perl:= )
+ png? ( media-libs/libpng:0= )
+ tiff? ( media-libs/tiff:0 )
+ zeroconf? ( net-dns/avahi[dbus] )
+"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ base_src_prepare
+ sed -e "s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/" -i configure.ac || die
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ $(use_enable dbus) \
+ $(use_enable zeroconf avahi) \
+ $(use_enable static-libs static) \
+ --with-fontdir="fonts/conf.avail" \
+ --with-pdftops=pdftops \
+ --enable-imagefilters \
+ $(use_with jpeg) \
+ $(use_with png) \
+ $(use_with tiff) \
+ --with-rcdir=no \
+ --with-browseremoteprotocols=DNSSD,CUPS \
+ --without-php
+}
+
+src_compile() {
+ MAKEOPTS=-j1 default
+
+ if use perl; then
+ pushd "${S}/scripting/perl" > /dev/null
+ perl-module_src_configure
+ perl-module_src_compile
+ popd > /dev/null
+ fi
+}
+
+src_install() {
+ default
+
+ if use perl; then
+ pushd "${S}/scripting/perl" > /dev/null
+ perl-module_src_install
+ perl_delete_localpod
+ popd > /dev/null
+ fi
+
+ # workaround: some printer drivers still require pstoraster and pstopxl, bug #383831
+ dosym /usr/libexec/cups/filter/gstoraster /usr/libexec/cups/filter/pstoraster
+ dosym /usr/libexec/cups/filter/gstopxl /usr/libexec/cups/filter/pstopxl
+
+ prune_libtool_files --all
+
+ cp "${FILESDIR}"/cups-browsed.init.d "${T}"/cups-browsed || die
+
+ if ! use zeroconf ; then
+ sed -i -e 's:need cupsd avahi-daemon:need cupsd:g' "${T}"/cups-browsed || die
+ sed -i -e 's:cups\.service avahi-daemon\.service:cups.service:g' "${S}"/utils/cups-browsed.service || die
+ fi
+
+ if ! use foomatic ; then
+ # this needs an upstream solution / configure switch
+ rm -v "${ED}/usr/bin/foomatic-rip" || die
+ rm -v "${ED}/usr/libexec/cups/filter/foomatic-rip" || die
+ rm -v "${ED}/usr/share/man/man1/foomatic-rip.1" || die
+ fi
+
+ doinitd "${T}"/cups-browsed
+ systemd_dounit "${S}/utils/cups-browsed.service"
+}
+
+pkg_postinst() {
+ if ! use foomatic ; then
+ ewarn "You are disabling the foomatic code in cups-filters. Please do that ONLY if absolutely."
+ ewarn "necessary. net-print/foomatic-filters as replacement is deprecated and unmaintained."
+ fi
+}
diff --git a/net-print/cups-filters/cups-filters-1.0.71.ebuild b/net-print/cups-filters/cups-filters-1.0.71.ebuild
new file mode 100644
index 000000000000..474f495cad06
--- /dev/null
+++ b/net-print/cups-filters/cups-filters-1.0.71.ebuild
@@ -0,0 +1,122 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+GENTOO_DEPEND_ON_PERL=no
+
+inherit base eutils perl-module autotools systemd
+
+if [[ "${PV}" == "9999" ]] ; then
+ inherit bzr
+ EBZR_REPO_URI="http://bzr.linuxfoundation.org/openprinting/cups-filters"
+ KEYWORDS="alpha amd64 arm hppa ia64 ppc64 sparc x86"
+else
+ SRC_URI="http://www.openprinting.org/download/${PN}/${P}.tar.xz"
+ KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-fbsd ~m68k-mint"
+fi
+DESCRIPTION="Cups PDF filters"
+HOMEPAGE="http://www.linuxfoundation.org/collaborate/workgroups/openprinting/pdfasstandardprintjobformat"
+
+LICENSE="MIT GPL-2"
+SLOT="0"
+IUSE="dbus +foomatic jpeg perl png static-libs tiff zeroconf"
+
+RDEPEND="
+ >=app-text/ghostscript-gpl-9.09
+ app-text/poppler:=[cxx,jpeg?,lcms,tiff?,xpdf-headers(+)]
+ >=app-text/qpdf-3.0.2:=
+ media-libs/fontconfig
+ media-libs/freetype:2
+ media-libs/lcms:2
+ >=net-print/cups-1.7.3
+ !<=net-print/cups-1.5.9999
+ sys-devel/bc
+ sys-libs/zlib
+ dbus? ( sys-apps/dbus )
+ foomatic? ( !net-print/foomatic-filters )
+ jpeg? ( virtual/jpeg:0 )
+ perl? ( dev-lang/perl:= )
+ png? ( media-libs/libpng:0= )
+ tiff? ( media-libs/tiff:0 )
+ zeroconf? ( net-dns/avahi[dbus] )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}/${PN}-1.0.71-poppler0340.patch" )
+
+src_prepare() {
+ base_src_prepare
+ sed -e "s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/" -i configure.ac || die
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ $(use_enable dbus) \
+ $(use_enable zeroconf avahi) \
+ $(use_enable static-libs static) \
+ --with-fontdir="fonts/conf.avail" \
+ --with-pdftops=pdftops \
+ --enable-imagefilters \
+ $(use_with jpeg) \
+ $(use_with png) \
+ $(use_with tiff) \
+ --with-rcdir=no \
+ --with-browseremoteprotocols=DNSSD,CUPS \
+ --without-php
+}
+
+src_compile() {
+ MAKEOPTS=-j1 default
+
+ if use perl; then
+ pushd "${S}/scripting/perl" > /dev/null
+ perl-module_src_configure
+ perl-module_src_compile
+ popd > /dev/null
+ fi
+}
+
+src_install() {
+ default
+
+ if use perl; then
+ pushd "${S}/scripting/perl" > /dev/null
+ perl-module_src_install
+ perl_delete_localpod
+ popd > /dev/null
+ fi
+
+ # workaround: some printer drivers still require pstoraster and pstopxl, bug #383831
+ dosym /usr/libexec/cups/filter/gstoraster /usr/libexec/cups/filter/pstoraster
+ dosym /usr/libexec/cups/filter/gstopxl /usr/libexec/cups/filter/pstopxl
+
+ prune_libtool_files --all
+
+ cp "${FILESDIR}"/cups-browsed.init.d "${T}"/cups-browsed || die
+
+ if ! use zeroconf ; then
+ sed -i -e 's:need cupsd avahi-daemon:need cupsd:g' "${T}"/cups-browsed || die
+ sed -i -e 's:cups\.service avahi-daemon\.service:cups.service:g' "${S}"/utils/cups-browsed.service || die
+ fi
+
+ if ! use foomatic ; then
+ # this needs an upstream solution / configure switch
+ rm -v "${ED}/usr/bin/foomatic-rip" || die
+ rm -v "${ED}/usr/libexec/cups/filter/foomatic-rip" || die
+ rm -v "${ED}/usr/share/man/man1/foomatic-rip.1" || die
+ fi
+
+ doinitd "${T}"/cups-browsed
+ systemd_dounit "${S}/utils/cups-browsed.service"
+}
+
+pkg_postinst() {
+ if ! use foomatic ; then
+ ewarn "You are disabling the foomatic code in cups-filters. Please do that ONLY if absolutely."
+ ewarn "necessary. net-print/foomatic-filters as replacement is deprecated and unmaintained."
+ fi
+}
diff --git a/net-print/cups-filters/cups-filters-9999.ebuild b/net-print/cups-filters/cups-filters-9999.ebuild
new file mode 100644
index 000000000000..84982d880863
--- /dev/null
+++ b/net-print/cups-filters/cups-filters-9999.ebuild
@@ -0,0 +1,120 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+GENTOO_DEPEND_ON_PERL=no
+
+inherit base eutils perl-module autotools systemd
+
+if [[ "${PV}" == "9999" ]] ; then
+ inherit bzr
+ EBZR_REPO_URI="http://bzr.linuxfoundation.org/openprinting/cups-filters"
+ KEYWORDS=""
+else
+ SRC_URI="http://www.openprinting.org/download/${PN}/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-fbsd ~m68k-mint"
+fi
+DESCRIPTION="Cups PDF filters"
+HOMEPAGE="http://www.linuxfoundation.org/collaborate/workgroups/openprinting/pdfasstandardprintjobformat"
+
+LICENSE="MIT GPL-2"
+SLOT="0"
+IUSE="dbus +foomatic jpeg perl png static-libs tiff zeroconf"
+
+RDEPEND="
+ >=app-text/ghostscript-gpl-9.09
+ app-text/poppler:=[cxx,jpeg?,lcms,tiff?,xpdf-headers(+)]
+ >=app-text/qpdf-3.0.2:=
+ media-libs/fontconfig
+ media-libs/freetype:2
+ media-libs/lcms:2
+ >=net-print/cups-1.7.3
+ !<=net-print/cups-1.5.9999
+ sys-devel/bc
+ sys-libs/zlib
+ dbus? ( sys-apps/dbus )
+ foomatic? ( !net-print/foomatic-filters )
+ jpeg? ( virtual/jpeg:0 )
+ perl? ( dev-lang/perl:= )
+ png? ( media-libs/libpng:0= )
+ tiff? ( media-libs/tiff:0 )
+ zeroconf? ( net-dns/avahi[dbus] )
+"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ base_src_prepare
+ sed -e "s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/" -i configure.ac || die
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ $(use_enable dbus) \
+ $(use_enable zeroconf avahi) \
+ $(use_enable static-libs static) \
+ --with-fontdir="fonts/conf.avail" \
+ --with-pdftops=pdftops \
+ --enable-imagefilters \
+ $(use_with jpeg) \
+ $(use_with png) \
+ $(use_with tiff) \
+ --with-rcdir=no \
+ --with-browseremoteprotocols=DNSSD,CUPS \
+ --without-php
+}
+
+src_compile() {
+ MAKEOPTS=-j1 default
+
+ if use perl; then
+ pushd "${S}/scripting/perl" > /dev/null
+ perl-module_src_configure
+ perl-module_src_compile
+ popd > /dev/null
+ fi
+}
+
+src_install() {
+ default
+
+ if use perl; then
+ pushd "${S}/scripting/perl" > /dev/null
+ perl-module_src_install
+ perl_delete_localpod
+ popd > /dev/null
+ fi
+
+ # workaround: some printer drivers still require pstoraster and pstopxl, bug #383831
+ dosym /usr/libexec/cups/filter/gstoraster /usr/libexec/cups/filter/pstoraster
+ dosym /usr/libexec/cups/filter/gstopxl /usr/libexec/cups/filter/pstopxl
+
+ prune_libtool_files --all
+
+ cp "${FILESDIR}"/cups-browsed.init.d "${T}"/cups-browsed || die
+
+ if ! use zeroconf ; then
+ sed -i -e 's:need cupsd avahi-daemon:need cupsd:g' "${T}"/cups-browsed || die
+ sed -i -e 's:cups\.service avahi-daemon\.service:cups.service:g' "${S}"/utils/cups-browsed.service || die
+ fi
+
+ if ! use foomatic ; then
+ # this needs an upstream solution / configure switch
+ rm -v "${ED}/usr/bin/foomatic-rip" || die
+ rm -v "${ED}/usr/libexec/cups/filter/foomatic-rip" || die
+ rm -v "${ED}/usr/share/man/man1/foomatic-rip.1" || die
+ fi
+
+ doinitd "${T}"/cups-browsed
+ systemd_dounit "${S}/utils/cups-browsed.service"
+}
+
+pkg_postinst() {
+ if ! use foomatic ; then
+ ewarn "You are disabling the foomatic code in cups-filters. Please do that ONLY if absolutely."
+ ewarn "necessary. net-print/foomatic-filters as replacement is deprecated and unmaintained."
+ fi
+}
diff --git a/net-print/cups-filters/files/cups-browsed.init.d b/net-print/cups-filters/files/cups-browsed.init.d
new file mode 100644
index 000000000000..785c13a25d8a
--- /dev/null
+++ b/net-print/cups-filters/files/cups-browsed.init.d
@@ -0,0 +1,20 @@
+#!/sbin/runscript
+
+PIDFILE=/var/run/cups-browsed.pid
+
+depend() {
+ need cupsd avahi-daemon
+}
+
+start() {
+ ebegin "Starting cups-browsed"
+ start-stop-daemon --start --make-pidfile --pidfile "${PIDFILE}" \
+ --background --quiet --exec /usr/sbin/cups-browsed
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping cups-browsed"
+ start-stop-daemon --stop --pidfile "${PIDFILE}" --quiet --exec /usr/sbin/cupsd
+ eend $?
+}
diff --git a/net-print/cups-filters/files/cups-browsed.service b/net-print/cups-filters/files/cups-browsed.service
new file mode 100644
index 000000000000..144956c7fd2f
--- /dev/null
+++ b/net-print/cups-filters/files/cups-browsed.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Make remote CUPS printers available locally
+After=cups.service avahi-daemon.service
+Wants=cups.service avahi-daemon.service
+
+[Service]
+ExecStart=/usr/sbin/cups-browsed
+
+[Install]
+WantedBy=multi-user.target
diff --git a/net-print/cups-filters/files/cups-filters-1.0.53-uclibc.patch b/net-print/cups-filters/files/cups-filters-1.0.53-uclibc.patch
new file mode 100644
index 000000000000..88e6c341f1f5
--- /dev/null
+++ b/net-print/cups-filters/files/cups-filters-1.0.53-uclibc.patch
@@ -0,0 +1,16 @@
+--- cups-filters-1.0.53/filter/foomatic-rip/foomaticrip.c
++++ cups-filters-1.0.53-uclibc/filter/foomatic-rip/foomaticrip.c
+@@ -736,8 +736,13 @@ int main(int argc, char** argv)
+ debug = 1;
+
+ if (debug) {
++#ifdef __UCLIBC__
++ sprintf(tmp, "%s-log-XXXXXX", LOG_FILE);
++ int fd = mkstemp (tmp);
++#else
+ sprintf(tmp, "%s-XXXXXX.log", LOG_FILE);
+ int fd = mkstemps (tmp, 4);
++#endif
+ if (fd != -1)
+ logh = fdopen(fd, "w");
+ else
diff --git a/net-print/cups-filters/files/cups-filters-1.0.65-poppler0310.patch b/net-print/cups-filters/files/cups-filters-1.0.65-poppler0310.patch
new file mode 100644
index 000000000000..569d835cfe02
--- /dev/null
+++ b/net-print/cups-filters/files/cups-filters-1.0.65-poppler0310.patch
@@ -0,0 +1,65 @@
+Source: http://www.linuxfromscratch.org/blfs/view/svn/pst/cups-filters.html
+
+Submitted By: Armin K. <krejzi at email dot com>
+Date: 2015-02-10
+Initial Package Version: 1.0.62
+Upstream Status: Submitted
+Origin: Self
+Description: Fixes building when using Poppler 0.31.x.
+
+--- a/filter/pdftoijs.cxx 2013-12-10 22:20:15.000000000 +0100
++++ b/filter/pdftoijs.cxx 2015-02-10 21:51:32.700190378 +0100
+@@ -436,7 +436,11 @@
+ }
+
+ out = new SplashOutputDev(cmode,rowpad/* row padding */,
+- reverseVideo,paperColor,gTrue,gFalse);
++ reverseVideo,paperColor,gTrue
++#if POPPLER_VERSION_MAJOR > 0 || POPPLER_VERSION_MINOR <= 30
++ ,gFalse
++#endif
++ );
+ #if POPPLER_VERSION_MAJOR > 0 || POPPLER_VERSION_MINOR >= 19
+ out->startDoc(doc);
+ #else
+--- a/filter/pdftoopvp/OPVPOutputDev.cxx 2014-03-10 12:19:19.000000000 +0100
++++ b/filter/pdftoopvp/OPVPOutputDev.cxx 2015-02-10 21:52:09.092847693 +0100
+@@ -278,7 +278,11 @@
+ gFalse,
+ gFalse,
+ #endif
++#if POPPLER_VERSION_MAJOR > 0 || POPPLER_VERSION_MINOR <= 30
+ globalParams->getAntialias());
++#else
++ gFalse);
++#endif
+ for (i = 0; i < nT3Fonts; ++i) {
+ delete t3FontCache[i];
+ }
+--- a/filter/pdftoopvp/pdftoopvp.cxx 2013-12-10 22:20:15.000000000 +0100
++++ b/filter/pdftoopvp/pdftoopvp.cxx 2015-02-10 21:51:32.701190397 +0100
+@@ -614,7 +614,9 @@
+ ok = gFalse;
+ }
+ }
++#if POPPLER_VERSION_MAJOR > 0 || POPPLER_VERSION_MINOR <= 30
+ globalParams->setAntialias("no");
++#endif
+ if (quiet) {
+ globalParams->setErrQuiet(quiet);
+ }
+--- a/filter/pdftoraster.cxx 2014-09-26 18:23:04.000000000 +0200
++++ b/filter/pdftoraster.cxx 2015-02-10 21:51:32.701190397 +0100
+@@ -2100,7 +2100,11 @@
+ }
+
+ out = new SplashOutputDev(cmode,rowpad/* row padding */,
+- gFalse,paperColor,gTrue,gFalse);
++ gFalse,paperColor,gTrue
++#if POPPLER_VERSION_MAJOR > 0 || POPPLER_VERSION_MINOR <= 30
++ ,gFalse
++#endif
++ );
+ #if POPPLER_VERSION_MAJOR > 0 || POPPLER_VERSION_MINOR >= 19
+ out->startDoc(doc);
+ #else
diff --git a/net-print/cups-filters/files/cups-filters-1.0.71-poppler0340.patch b/net-print/cups-filters/files/cups-filters-1.0.71-poppler0340.patch
new file mode 100644
index 000000000000..ac0cae3bc7a6
--- /dev/null
+++ b/net-print/cups-filters/files/cups-filters-1.0.71-poppler0340.patch
@@ -0,0 +1,38 @@
+Hack to make this build against poppler-0.34. Just disables color management in some places.
+We should probably find a better solution. dilfridge@gentoo.org
+
+
+diff -ruN cups-filters-1.0.71.orig/filter/pdftoopvp/OPVPOutputDev.cxx cups-filters-1.0.71/filter/pdftoopvp/OPVPOutputDev.cxx
+--- cups-filters-1.0.71.orig/filter/pdftoopvp/OPVPOutputDev.cxx 2015-06-26 17:45:26.000000000 +0200
++++ cups-filters-1.0.71/filter/pdftoopvp/OPVPOutputDev.cxx 2015-07-14 19:02:51.666737621 +0200
+@@ -1812,9 +1812,15 @@
+ maskSplash->drawImage(&imageSrc, &imgMaskData,
+ splashModeMono8, gFalse, maskWidth, maskHeight, mat);
+ #else
++#if POPPLER_VERSION_MAJOR <= 0 && POPPLER_VERSION_MINOR <= 33
+ maskSplash->drawImage(&imageSrc, &imgMaskData,
+ splashModeMono8, gFalse, maskWidth, maskHeight,
+ mat,gFalse);
++#else
++ maskSplash->drawImage(&imageSrc, NULL, &imgMaskData,
++ splashModeMono8, gFalse, maskWidth, maskHeight,
++ mat,gFalse);
++#endif
+ #endif
+ delete imgMaskData.imgStr;
+ maskStr->close();
+diff -ruN cups-filters-1.0.71.orig/filter/pdftoopvp/oprs/OPRS.cxx cups-filters-1.0.71/filter/pdftoopvp/oprs/OPRS.cxx
+--- cups-filters-1.0.71.orig/filter/pdftoopvp/oprs/OPRS.cxx 2015-06-26 17:45:26.000000000 +0200
++++ cups-filters-1.0.71/filter/pdftoopvp/oprs/OPRS.cxx 2015-07-14 19:00:20.655740720 +0200
+@@ -241,7 +241,11 @@
+ #if POPPLER_VERSION_MAJOR <= 0 && (POPPLER_VERSION_MINOR <= 20 || (POPPLER_VERSION_MINOR == 21 && POPPLER_VERSION_MICRO <= 2))
+ return splash->drawImage(src,srcData,srcMode,srcAlpha,w,h,mat);
+ #else
++#if POPPLER_VERSION_MAJOR <= 0 && POPPLER_VERSION_MINOR <= 33
+ return splash->drawImage(src,srcData,srcMode,srcAlpha,w,h,mat,gFalse);
++#else
++ return splash->drawImage(src,NULL,srcData,srcMode,srcAlpha,w,h,mat,gFalse);
++#endif
+ #endif
+ } else {
+ return opvpSplash->drawImage(src,srcData,srcMode,srcAlpha,w,h,mat);
diff --git a/net-print/cups-filters/metadata.xml b/net-print/cups-filters/metadata.xml
new file mode 100644
index 000000000000..dec732cd7b45
--- /dev/null
+++ b/net-print/cups-filters/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+ <use>
+ <flag name='foomatic'>
+ Build the included foomatic-rip printer driver. Strongly recommended.
+ </flag>
+ </use>
+</pkgmetadata>
diff --git a/net-print/cups-pdf/Manifest b/net-print/cups-pdf/Manifest
new file mode 100644
index 000000000000..99afba318b40
--- /dev/null
+++ b/net-print/cups-pdf/Manifest
@@ -0,0 +1,2 @@
+DIST cups-pdf_2.6.1.tar.gz 33315 SHA256 04e17eb563dceea048e1a435edcbcf52faa5288f85e8390cd64d702edb6745f1
+DIST cups-pdf_3.0beta1.tar.gz 38040 SHA256 d8f30740e0092e7b53cd228d9ddae8085bde744b5e63064bf79ad0c3e3ebe578 SHA512 89d77bf8daa4f82cde4db32c607a5d503ae37bc720906b9fafbd7dedac3cb522fbc342475cf4cff62fdbb16c59c7a1a62814cf85492f6a97e277e64c886985f5 WHIRLPOOL 6d44d4c62f198a4b8da83791bb22bad9e3a43dbcad2a587729e41eb80cd9a5cb14561dff522c6452cb591ad6463b14d9d0ff41b19e7c58db494db421d2446bf6
diff --git a/net-print/cups-pdf/cups-pdf-2.6.1.ebuild b/net-print/cups-pdf/cups-pdf-2.6.1.ebuild
new file mode 100644
index 000000000000..cb1182d1a307
--- /dev/null
+++ b/net-print/cups-pdf/cups-pdf-2.6.1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit toolchain-funcs
+
+DESCRIPTION="Provides a virtual printer for CUPS to produce PDF files"
+HOMEPAGE="http://www.cups-pdf.de/"
+SRC_URI="http://www.cups-pdf.de/src/${PN}_${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+
+DEPEND="net-print/cups
+ app-text/ghostscript-gpl"
+RDEPEND="${DEPEND}"
+
+src_compile() {
+ cd "${S}"/src
+ $(tc-getCC) ${CFLAGS} ${LDFLAGS} -o ${PN} ${PN}.c || die "Compilation failed."
+}
+
+src_install () {
+ exeinto /usr/libexec/cups/backend
+ exeopts -m0700
+ doexe src/cups-pdf
+
+ insinto /usr/share/cups/model
+ doins extra/CUPS-PDF.ppd
+
+ insinto /etc/cups
+ doins extra/cups-pdf.conf
+
+ dodoc ChangeLog README
+ newdoc contrib/Contents contrib_Contents
+}
+
+pkg_postinst () {
+ elog "Please view both the README and contrib_Contents files"
+ elog "as you may want to adjust some settings and/or use"
+ elog "contributed software. In the latter case you may need"
+ elog "to extract some files from the ${P} distfile."
+}
diff --git a/net-print/cups-pdf/cups-pdf-3.0_beta1.ebuild b/net-print/cups-pdf/cups-pdf-3.0_beta1.ebuild
new file mode 100644
index 000000000000..a8a3480706af
--- /dev/null
+++ b/net-print/cups-pdf/cups-pdf-3.0_beta1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit toolchain-funcs
+
+DESCRIPTION="Provides a virtual printer for CUPS to produce PDF files"
+HOMEPAGE="http://www.cups-pdf.de/"
+SRC_URI="http://www.cups-pdf.de/src/${PN}_${PV/_}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~x86"
+IUSE="+ppds"
+
+RDEPEND="net-print/cups
+ app-text/ghostscript-gpl"
+DEPEND="${RDEPEND}"
+
+S=${WORKDIR}/${PN}-${PV/_}
+
+src_compile() {
+ pushd src >/dev/null
+ $(tc-getCC) ${LDFLAGS} ${CFLAGS} ${PN}.c -o ${PN} -lcups || die
+ popd >/dev/null
+}
+
+src_install() {
+ exeinto /usr/libexec/cups/backend
+ exeopts -m0700
+ doexe src/cups-pdf
+
+ insinto /etc/cups
+ doins extra/cups-pdf.conf
+
+ insinto /usr/share/cups/model
+ if use ppds; then
+ doins extra/CUPS-PDF_opt.ppd
+ else
+ doins extra/CUPS-PDF_noopt.ppd
+ fi
+
+ dodoc ChangeLog README
+
+ dodoc -r contrib
+}
diff --git a/net-print/cups-pdf/metadata.xml b/net-print/cups-pdf/metadata.xml
new file mode 100644
index 000000000000..1fa0ca569505
--- /dev/null
+++ b/net-print/cups-pdf/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>printing</herd>
+</pkgmetadata>
diff --git a/net-print/cups-pk-helper/Manifest b/net-print/cups-pk-helper/Manifest
new file mode 100644
index 000000000000..608bff00ab1f
--- /dev/null
+++ b/net-print/cups-pk-helper/Manifest
@@ -0,0 +1,2 @@
+DIST cups-pk-helper-0.2.4.tar.xz 149828 SHA256 d187dc994ff64621aa090d114170b292daa11122481d8b8adb7613b32ca4e3c3 SHA512 0e071cad5cb8177caefa973de754f015fca3f6bc291ff1f30b978be990f45e443ca91999a2c733aff616cd9a5fc3b4074e1e01a18dd049f6d9b629171587ba02 WHIRLPOOL 7b34eba1fd4fc26c81dafe1eb118e2aec7b6f955a3f0323866a732c85ae3046236e87deb7f6c0427c02bfaff6e823182f42909ac8b19817c6cb089e90127da32
+DIST cups-pk-helper-0.2.5.tar.xz 152620 SHA256 19221eed65a1e1498d396f3f99a783a95b21b4385e63b57a1f16e8728b8ca118 SHA512 9fc0af517755482dc3787ce87df389adee41b826c4ccca25df69474812523fa265c3dcf31fbc1a75c1b680b9b6490a9c358ac30aed7570fa98f5287f02a2be40 WHIRLPOOL b97000a948cdd82c46e83ab1e2be936068fc2eb28af13f672495c5827fe7ac7ddc4c5ac8df5fe146686aec386f513a2e36609727077254911a12162818003932
diff --git a/net-print/cups-pk-helper/cups-pk-helper-0.2.4-r1.ebuild b/net-print/cups-pk-helper/cups-pk-helper-0.2.4-r1.ebuild
new file mode 100644
index 000000000000..2e3a348c4c8e
--- /dev/null
+++ b/net-print/cups-pk-helper/cups-pk-helper-0.2.4-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils
+
+DESCRIPTION="PolicyKit helper to configure cups with fine-grained privileges"
+HOMEPAGE="http://www.freedesktop.org/wiki/Software/cups-pk-helper"
+SRC_URI="http://www.freedesktop.org/software/${PN}/releases/${P}.tar.xz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc x86"
+IUSE=""
+
+# Require {glib,gdbus-codegen}-2.30.0 due to GDBus changes between 2.29.92
+# and 2.30.0
+COMMON_DEPEND=">=dev-libs/glib-2.30.0:2
+ net-print/cups
+ >=sys-auth/polkit-0.97"
+RDEPEND="${COMMON_DEPEND}
+ sys-apps/dbus"
+DEPEND="${COMMON_DEPEND}
+ app-arch/xz-utils
+ >=dev-util/gdbus-codegen-2.30.0
+ >=dev-util/intltool-0.40.6
+ virtual/pkgconfig
+ sys-devel/gettext"
+
+src_prepare() {
+ DOCS="AUTHORS HACKING NEWS README"
+
+ # Revert "Be stricter when validating printer names", bug #459596
+ epatch "${FILESDIR}/${P}-revert-stricter.patch"
+
+ # Regenerate dbus-codegen files to fix build with glib-2.30.x; bug #410773
+ rm -v src/cph-iface-mechanism.{c,h} || die
+}
diff --git a/net-print/cups-pk-helper/cups-pk-helper-0.2.5.ebuild b/net-print/cups-pk-helper/cups-pk-helper-0.2.5.ebuild
new file mode 100644
index 000000000000..63841edf3284
--- /dev/null
+++ b/net-print/cups-pk-helper/cups-pk-helper-0.2.5.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="no"
+
+inherit gnome2
+
+DESCRIPTION="PolicyKit helper to configure cups with fine-grained privileges"
+HOMEPAGE="http://www.freedesktop.org/wiki/Software/cups-pk-helper"
+SRC_URI="http://www.freedesktop.org/software/${PN}/releases/${P}.tar.xz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc x86"
+IUSE=""
+
+# Require {glib,gdbus-codegen}-2.30.0 due to GDBus changes between 2.29.92
+# and 2.30.0
+COMMON_DEPEND="
+ >=dev-libs/glib-2.30.0:2
+ net-print/cups
+ >=sys-auth/polkit-0.97
+"
+RDEPEND="${COMMON_DEPEND}
+ sys-apps/dbus
+"
+DEPEND="${COMMON_DEPEND}
+ >=dev-util/gdbus-codegen-2.30.0
+ >=dev-util/intltool-0.40.6
+ virtual/pkgconfig
+ sys-devel/gettext
+"
+
+src_prepare() {
+ DOCS="AUTHORS HACKING NEWS README"
+
+ # Regenerate dbus-codegen files to fix build with glib-2.30.x; bug #410773
+ rm -v src/cph-iface-mechanism.{c,h} || die
+
+ gnome2_src_prepare
+}
diff --git a/net-print/cups-pk-helper/files/cups-pk-helper-0.2.4-revert-stricter.patch b/net-print/cups-pk-helper/files/cups-pk-helper-0.2.4-revert-stricter.patch
new file mode 100644
index 000000000000..d20e3484baea
--- /dev/null
+++ b/net-print/cups-pk-helper/files/cups-pk-helper-0.2.4-revert-stricter.patch
@@ -0,0 +1,55 @@
+From f00aee0b43c31e94087668b23b72e873c660de5e Mon Sep 17 00:00:00 2001
+From: Vincent Untz <vuntz@suse.com>
+Date: Mon, 10 Dec 2012 09:44:31 +0000
+Subject: Revert "Be stricter when validating printer names"
+
+Apparently, this is way too strict. The lpadmin man page says:
+
+ CUPS allows printer names to contain any printable character except
+ SPACE, TAB, "/", or "#".
+
+So the previous code was (mostly) correct.
+
+This reverts commit 7bf9cbe43ef8f648f308e4760f75c2aa6b61fa8e.
+---
+diff --git a/src/cups.c b/src/cups.c
+index 96c2c20..09f0e7b 100644
+--- a/src/cups.c
++++ b/src/cups.c
+@@ -327,25 +327,23 @@ _cph_cups_is_printer_name_valid_internal (const char *name)
+ int i;
+ int len;
+
+- /* Quoting http://www.cups.org/documentation.php/doc-1.1/sam.html#4_1:
+- *
+- * The printer name must start with any printable character except
+- * " ", "/", and "@". It can contain up to 127 letters, numbers, and
+- * the underscore (_).
+- *
+- * The first part is a bit weird, as the second part is more
+- * restrictive. So we only consider the second part. */
+-
+ /* no empty string */
+ if (!name || name[0] == '\0')
+ return FALSE;
+
+ len = strlen (name);
+- if (len > 127)
++ /* no string that is too long; see comment at the beginning of the
++ * validation code block */
++ if (len > CPH_STR_MAXLEN)
+ return FALSE;
+
++ /* only printable characters, no space, no /, no # */
+ for (i = 0; i < len; i++) {
+- if (!g_ascii_isalnum (name[i]) && name[i] != '_')
++ if (!g_ascii_isprint (name[i]))
++ return FALSE;
++ if (g_ascii_isspace (name[i]))
++ return FALSE;
++ if (name[i] == '/' || name[i] == '#')
+ return FALSE;
+ }
+
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/net-print/cups-pk-helper/metadata.xml b/net-print/cups-pk-helper/metadata.xml
new file mode 100644
index 000000000000..dad9001338dc
--- /dev/null
+++ b/net-print/cups-pk-helper/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>gnome</herd>
+</pkgmetadata>
diff --git a/net-print/cups-windows/Manifest b/net-print/cups-windows/Manifest
new file mode 100644
index 000000000000..34009351c6da
--- /dev/null
+++ b/net-print/cups-windows/Manifest
@@ -0,0 +1 @@
+DIST cups-windows-6.0-source.tar.bz2 38284 SHA256 ce40c91357f121d16e468b99c134b404855bc77a34ee410588b8958777c28956
diff --git a/net-print/cups-windows/cups-windows-6.0-r1.ebuild b/net-print/cups-windows/cups-windows-6.0-r1.ebuild
new file mode 100644
index 000000000000..50b3d50982e4
--- /dev/null
+++ b/net-print/cups-windows/cups-windows-6.0-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+DESCRIPTION="CUPS PostScript Driver for Windows"
+HOMEPAGE="http://www.cups.org/"
+SRC_URI="mirror://gentoo/${P}-source.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd"
+IUSE=""
+
+RDEPEND=">=net-print/cups-1.2"
+DEPEND="${RDEPEND}"
+
+src_install() {
+ emake install BUILDROOT="${D}"
+ dodoc README.txt
+ einfo "Copying missing cups6.ppd file"
+ cp "${S}/i386/cups6.ppd" "${ED}/usr/share/cups/drivers/"
+}
diff --git a/net-print/cups-windows/metadata.xml b/net-print/cups-windows/metadata.xml
new file mode 100644
index 000000000000..1fa0ca569505
--- /dev/null
+++ b/net-print/cups-windows/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>printing</herd>
+</pkgmetadata>
diff --git a/net-print/cups/Manifest b/net-print/cups/Manifest
new file mode 100644
index 000000000000..16d23103fb5f
--- /dev/null
+++ b/net-print/cups/Manifest
@@ -0,0 +1,3 @@
+DIST cups-2.0.1-source.tar.bz2 8738217 SHA256 60f7f2cca69f3b761a029fb314ee4299e3ea0fc02350f06d192cf31d58215525 SHA512 a92e4735f23f45fd16fb47ea729be762001c5b74f785d344bb11d3e87a361aa772ef79ff41106cdc30f45a1396ba419d6e5f77164b9deee27876e9928357f3ce WHIRLPOOL 4f9695bfa759d5bcf611f30c0f071ad352066313f871e2459c005511a4713ad1c58b90bbe3cc233bb72a5b0a51e27b630c0a27d1ddfed80044c0f6dca14e53c8
+DIST cups-2.0.2-source.tar.bz2 8766982 SHA256 858720f76b66fd0441ae2a16f7cabd9554c8c64607e28ffacf16c36c53a3b18b SHA512 6b0ae58983f66ea295aabe7367880931aabbb4390085d31bcdd8d42830c958c23b34bfa8b761bd681e233d9727a7841524076dd9760f5b093a6001676d74bc2e WHIRLPOOL 6a6282c0f72f3c1fdae0652245e7cb69c9f3a8a51d1ec4b1e81ffcf1a6871a67f17fa497f41737b37b7fb8c0fe964abad141ea1dc4c065c70c72dee8b965bf60
+DIST cups-2.0.3-source.tar.bz2 8797220 SHA256 bc3167048690a7379f29a37d9fbd2143cf0ca033b54eedd9333ddfc4ee258881 SHA512 fcc2be8d12cec624423a07706486afd226c9cb29b2ba694d63b8250c16a7d0f39aa51e6c831ca7c978ba5009e98b1daedad4b119a4f3287a88e21e48f0d07e18 WHIRLPOOL d12771b6d941db78854a1b05644a4402fa6a62f8acab1332c7490887e0099463b129684f4dd21b5e9f02e4f8e23bef633a06fca01ad8fa8b34de9298b72ab3ba
diff --git a/net-print/cups/cups-2.0.1-r1.ebuild b/net-print/cups/cups-2.0.1-r1.ebuild
new file mode 100644
index 000000000000..7273dc974c29
--- /dev/null
+++ b/net-print/cups/cups-2.0.1-r1.ebuild
@@ -0,0 +1,358 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit autotools base fdo-mime gnome2-utils flag-o-matic linux-info \
+ multilib multilib-minimal pam python-single-r1 user versionator \
+ java-pkg-opt-2 systemd toolchain-funcs
+
+MY_P=${P/_rc/rc}
+MY_P=${MY_P/_beta/b}
+MY_PV=${PV/_rc/rc}
+MY_PV=${MY_PV/_beta/b}
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="http://www.cups.org/cups.git"
+ if [[ ${PV} != 9999 ]]; then
+ EGIT_BRANCH=branch-${PV/.9999}
+ fi
+ KEYWORDS="alpha amd64 hppa ia64 ppc ppc64 sparc x86"
+else
+ SRC_URI="http://www.cups.org/software/${MY_PV}/${MY_P}-source.tar.bz2"
+ KEYWORDS="ia64"
+fi
+
+DESCRIPTION="The Common Unix Printing System"
+HOMEPAGE="http://www.cups.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="acl dbus debug java kerberos lprng-compat pam
+ python selinux +ssl static-libs systemd +threads usb X xinetd zeroconf"
+
+LANGS="es"
+for X in ${LANGS} ; do
+ IUSE="${IUSE} +linguas_${X}"
+done
+
+CDEPEND="
+ app-text/libpaper
+ acl? (
+ kernel_linux? (
+ sys-apps/acl
+ sys-apps/attr
+ )
+ )
+ dbus? ( >=sys-apps/dbus-1.6.18-r1[${MULTILIB_USEDEP}] )
+ java? ( >=virtual/jre-1.6 )
+ kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
+ !lprng-compat? ( !net-print/lprng )
+ pam? ( virtual/pam )
+ python? ( ${PYTHON_DEPS} )
+ ssl? (
+ >=dev-libs/libgcrypt-1.5.3:0[${MULTILIB_USEDEP}]
+ >=net-libs/gnutls-2.12.23-r6[${MULTILIB_USEDEP}]
+ )
+ systemd? ( sys-apps/systemd )
+ usb? ( virtual/libusb:1 )
+ X? ( x11-misc/xdg-utils )
+ xinetd? ( sys-apps/xinetd )
+ zeroconf? ( >=net-dns/avahi-0.6.31-r2[${MULTILIB_USEDEP}] )
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-baselibs-20140508
+ !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+ )
+"
+
+DEPEND="${CDEPEND}
+ >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
+"
+
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-cups )
+"
+
+PDEPEND="
+ app-text/ghostscript-gpl[cups]
+ app-text/poppler[utils]
+ >=net-print/cups-filters-1.0.43
+"
+
+REQUIRED_USE="
+ python? ( ${PYTHON_REQUIRED_USE} )
+ usb? ( threads )
+"
+
+# upstream includes an interactive test which is a nono for gentoo
+RESTRICT="test"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.4.4-nostrip.patch"
+ "${FILESDIR}/${PN}-1.6.0-dont-compress-manpages.patch"
+ "${FILESDIR}/${PN}-1.6.0-fix-install-perms.patch"
+ "${FILESDIR}/${P}-rename-systemd-service-files.patch"
+ "${FILESDIR}/${P}-fix-compilation.patch"
+ "${FILESDIR}/${P}-xinetd-installation-fix.patch"
+ "${FILESDIR}/${P}-fix-linkage-to-gnutls.patch"
+)
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/cups-config
+)
+
+pkg_setup() {
+ enewgroup lp
+ enewuser lp -1 -1 -1 lp
+ enewgroup lpadmin 106
+
+ use python && python-single-r1_pkg_setup
+
+ if use kernel_linux; then
+ linux-info_pkg_setup
+ if ! linux_config_exists; then
+ ewarn "Can't check the linux kernel configuration."
+ ewarn "You might have some incompatible options enabled."
+ else
+ # recheck that we don't have usblp to collide with libusb
+ if use usb; then
+ if linux_chkconfig_present USB_PRINTER; then
+ eerror "Your usb printers will be managed via libusb. In this case, "
+ eerror "${P} requires the USB_PRINTER support disabled."
+ eerror "Please disable it:"
+ eerror " CONFIG_USB_PRINTER=n"
+ eerror "in /usr/src/linux/.config or"
+ eerror " Device Drivers --->"
+ eerror " USB support --->"
+ eerror " [ ] USB Printer support"
+ eerror "Alternatively, just disable the usb useflag for cups (your printer will still work)."
+ fi
+ else
+ #here we should warn user that he should enable it so he can print
+ if ! linux_chkconfig_present USB_PRINTER; then
+ ewarn "If you plan to use USB printers you should enable the USB_PRINTER"
+ ewarn "support in your kernel."
+ ewarn "Please enable it:"
+ ewarn " CONFIG_USB_PRINTER=y"
+ ewarn "in /usr/src/linux/.config or"
+ ewarn " Device Drivers --->"
+ ewarn " USB support --->"
+ ewarn " [*] USB Printer support"
+ ewarn "Alternatively, enable the usb useflag for cups and use the libusb code."
+ fi
+ fi
+ fi
+ fi
+}
+
+src_prepare() {
+ base_src_prepare
+
+ # Remove ".SILENT" rule for verbose output (bug 524338).
+ sed 's#^.SILENT:##g' -i "${S}"/Makedefs.in || die "sed failed"
+
+ # Fix install-sh, posix sh does not have 'function'.
+ sed 's#function gzipcp#gzipcp()#g' -i "${S}/install-sh"
+
+ AT_M4DIR=config-scripts eaclocal
+ eautoconf
+
+ # custom Makefiles
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ export DSOFLAGS="${LDFLAGS}"
+
+ einfo LANGS=\"${LANGS}\"
+ einfo LINGUAS=\"${LINGUAS}\"
+
+ local myconf=()
+
+ if tc-is-static-only; then
+ myconf+=(
+ --disable-shared
+ )
+ fi
+
+ # explicitly specify compiler wrt bug 524340
+ #
+ # need to override KRB5CONFIG for proper flags
+ # https://www.cups.org/str.php?L4423
+ econf \
+ CC="$(tc-getCC)" \
+ CXX="$(tc-getCXX)" \
+ KRB5CONFIG="${EPREFIX}"/usr/bin/${CHOST}-krb5-config \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --localstatedir="${EPREFIX}"/var \
+ --with-rundir="${EPREFIX}"/run/cups \
+ --with-cups-user=lp \
+ --with-cups-group=lp \
+ --with-docdir="${EPREFIX}"/usr/share/cups/html \
+ --with-languages="${LINGUAS}" \
+ --with-system-groups=lpadmin \
+ --with-xinetd=/etc/xinetd.d \
+ $(multilib_native_use_enable acl) \
+ $(use_enable dbus) \
+ $(use_enable debug) \
+ $(use_enable debug debug-guards) \
+ $(multilib_native_use_with java) \
+ $(use_enable kerberos gssapi) \
+ $(multilib_native_use_enable pam) \
+ $(multilib_native_use_with python python "${PYTHON}") \
+ $(use_enable static-libs static) \
+ $(use_enable threads) \
+ $(use_enable ssl gnutls) \
+ $(use_enable systemd) \
+ $(multilib_native_use_enable usb libusb) \
+ $(use_enable zeroconf avahi) \
+ --disable-dnssd \
+ --without-perl \
+ --without-php \
+ $(multilib_is_native_abi && echo --enable-libpaper || echo --disable-libpaper) \
+ "${myconf[@]}"
+
+ # install in /usr/libexec always, instead of using /usr/lib/cups, as that
+ # makes more sense when facing multilib support.
+ sed -i -e "s:SERVERBIN.*:SERVERBIN = \"\$\(BUILDROOT\)${EPREFIX}/usr/libexec/cups\":" Makedefs || die
+ sed -i -e "s:#define CUPS_SERVERBIN.*:#define CUPS_SERVERBIN \"${EPREFIX}/usr/libexec/cups\":" config.h || die
+ sed -i -e "s:cups_serverbin=.*:cups_serverbin=\"${EPREFIX}/usr/libexec/cups\":" cups-config || die
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi; then
+ default
+ else
+ emake libs
+ fi
+}
+
+multilib_src_test() {
+ multilib_is_native_abi && default
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ emake BUILDROOT="${D}" install
+ else
+ emake BUILDROOT="${D}" install-libs install-headers
+ dobin cups-config
+ fi
+}
+
+multilib_src_install_all() {
+ dodoc {CHANGES,CREDITS,README}.txt
+
+ # move the default config file to docs
+ dodoc "${ED}"/etc/cups/cupsd.conf.default
+ rm -f "${ED}"/etc/cups/cupsd.conf.default
+
+ # clean out cups init scripts
+ rm -rf "${ED}"/etc/{init.d/cups,rc*,pam.d/cups}
+
+ # install our init script
+ local neededservices
+ use zeroconf && neededservices+=" avahi-daemon"
+ use dbus && neededservices+=" dbus"
+ [[ -n ${neededservices} ]] && neededservices="need${neededservices}"
+ cp "${FILESDIR}"/cupsd.init.d-r1 "${T}"/cupsd || die
+ sed -i \
+ -e "s/@neededservices@/$neededservices/" \
+ "${T}"/cupsd || die
+ doinitd "${T}"/cupsd
+
+ # install our pam script
+ pamd_mimic_system cups auth account
+
+ if use xinetd ; then
+ # correct path
+ sed -i \
+ -e "s:server = .*:server = /usr/libexec/cups/daemon/cups-lpd:" \
+ "${ED}"/etc/xinetd.d/cups-lpd || die
+ # it is safer to disable this by default, bug #137130
+ grep -w 'disable' "${ED}"/etc/xinetd.d/cups-lpd || \
+ { sed -i -e "s:}:\tdisable = yes\n}:" "${ED}"/etc/xinetd.d/cups-lpd || die ; }
+ # write permission for file owner (root), bug #296221
+ fperms u+w /etc/xinetd.d/cups-lpd || die "fperms failed"
+ else
+ # always configure with --with-xinetd= and clean up later,
+ # bug #525604
+ rm -rf "${ED}"/etc/xinetd.d
+ fi
+
+ keepdir /usr/libexec/cups/driver /usr/share/cups/{model,profiles} \
+ /var/log/cups /var/spool/cups/tmp
+
+ keepdir /etc/cups/{interfaces,ppd,ssl}
+
+ use X || rm -r "${ED}"/usr/share/applications
+
+ # create /etc/cups/client.conf, bug #196967 and #266678
+ echo "ServerName ${EPREFIX}/run/cups/cups.sock" >> "${ED}"/etc/cups/client.conf
+
+ # the following files are now provided by cups-filters:
+ rm -r "${ED}"/usr/share/cups/banners || die
+ rm -r "${ED}"/usr/share/cups/data/testprint || die
+
+ # the following are created by the init script
+ rm -r "${ED}"/var/cache/cups || die
+ rm -r "${ED}"/run || die
+
+ # for the special case of running lprng and cups together, bug 467226
+ if use lprng-compat ; then
+ rm -fv "${ED}"/usr/bin/{lp*,cancel}
+ rm -fv "${ED}"/usr/sbin/lp*
+ rm -fv "${ED}"/usr/share/man/man1/{lp*,cancel*}
+ rm -fv "${ED}"/usr/share/man/man8/lp*
+ ewarn "Not installing lp... binaries, since the lprng-compat useflag is set."
+ ewarn "Unless you plan to install an exotic server setup, you most likely"
+ ewarn "do not want this. Disable the useflag then and all will be fine."
+ fi
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ # Update desktop file database and gtk icon cache (bug 370059)
+ gnome2_icon_cache_update
+ fdo-mime_desktop_database_update
+
+ # not slotted - at most one value
+ if ! [[ "${REPLACING_VERSIONS}" ]]; then
+ echo
+ elog "For information about installing a printer and general cups setup"
+ elog "take a look at: http://www.gentoo.org/doc/en/printing-howto.xml"
+ echo
+ fi
+
+ if [[ "${REPLACING_VERSIONS}" ]] && [[ "${REPLACING_VERSIONS}" < "1.6" ]]; then
+ echo
+ elog "CUPS-1.6 no longer supports automatic remote printers or implicit classes"
+ elog "via the CUPS, LDAP, or SLP protocols, i.e. \"network browsing\"."
+ elog "You will have to find printers using zeroconf/avahi instead, enter"
+ elog "the location manually, or run cups-browsed from net-print/cups-filters"
+ elog "which re-adds that functionality as a separate daemon."
+ echo
+ fi
+
+ if [[ "${REPLACING_VERSIONS}" == "1.6.2-r4" ]]; then
+ ewarn
+ ewarn "You are upgrading from the broken version net-print/cups-1.6.2-r4."
+ ewarn "Please rebuild net-print/cups-filters now to make sure everything is OK."
+ ewarn
+ fi
+}
+
+pkg_postrm() {
+ # Update desktop file database and gtk icon cache (bug 370059)
+ gnome2_icon_cache_update
+ fdo-mime_desktop_database_update
+}
diff --git a/net-print/cups/cups-2.0.2-r1.ebuild b/net-print/cups/cups-2.0.2-r1.ebuild
new file mode 100644
index 000000000000..66c03f1e6684
--- /dev/null
+++ b/net-print/cups/cups-2.0.2-r1.ebuild
@@ -0,0 +1,358 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit autotools base fdo-mime gnome2-utils flag-o-matic linux-info \
+ multilib multilib-minimal pam python-single-r1 user versionator \
+ java-pkg-opt-2 systemd toolchain-funcs
+
+MY_P=${P/_rc/rc}
+MY_P=${MY_P/_beta/b}
+MY_PV=${PV/_rc/rc}
+MY_PV=${MY_PV/_beta/b}
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="http://www.cups.org/cups.git"
+ if [[ ${PV} != 9999 ]]; then
+ EGIT_BRANCH=branch-${PV/.9999}
+ fi
+else
+ SRC_URI="http://www.cups.org/software/${MY_PV}/${MY_P}-source.tar.bz2"
+ KEYWORDS="alpha amd64 arm hppa ~ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~m68k-mint"
+fi
+
+DESCRIPTION="The Common Unix Printing System"
+HOMEPAGE="http://www.cups.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="acl dbus debug java kerberos lprng-compat pam
+ python selinux +ssl static-libs systemd +threads usb X xinetd zeroconf"
+
+LANGS="ca cs de es fr it ja pt_BR ru"
+for X in ${LANGS} ; do
+ IUSE="${IUSE} +linguas_${X}"
+done
+
+CDEPEND="
+ app-text/libpaper
+ acl? (
+ kernel_linux? (
+ sys-apps/acl
+ sys-apps/attr
+ )
+ )
+ dbus? ( >=sys-apps/dbus-1.6.18-r1[${MULTILIB_USEDEP}] )
+ java? ( >=virtual/jre-1.6 )
+ kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
+ !lprng-compat? ( !net-print/lprng )
+ pam? ( virtual/pam )
+ python? ( ${PYTHON_DEPS} )
+ ssl? (
+ >=dev-libs/libgcrypt-1.5.3:0[${MULTILIB_USEDEP}]
+ >=net-libs/gnutls-2.12.23-r6[${MULTILIB_USEDEP}]
+ )
+ systemd? ( sys-apps/systemd )
+ usb? ( virtual/libusb:1 )
+ X? ( x11-misc/xdg-utils )
+ xinetd? ( sys-apps/xinetd )
+ zeroconf? ( >=net-dns/avahi-0.6.31-r2[${MULTILIB_USEDEP}] )
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-baselibs-20140508
+ !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+ )
+"
+
+DEPEND="${CDEPEND}
+ >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
+"
+
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-cups )
+"
+
+PDEPEND="
+ app-text/ghostscript-gpl[cups]
+ app-text/poppler[utils]
+ >=net-print/cups-filters-1.0.43
+"
+
+REQUIRED_USE="
+ python? ( ${PYTHON_REQUIRED_USE} )
+ usb? ( threads )
+"
+
+# upstream includes an interactive test which is a nono for gentoo
+RESTRICT="test"
+
+S="${WORKDIR}/${MY_P}"
+
+# systemd-socket.patch from Fedora
+PATCHES=(
+ "${FILESDIR}/${PN}-1.6.0-dont-compress-manpages.patch"
+ "${FILESDIR}/${PN}-1.6.0-fix-install-perms.patch"
+ "${FILESDIR}/${PN}-1.4.4-nostrip.patch"
+ "${FILESDIR}/${PN}-2.0.2-rename-systemd-service-files.patch"
+ "${FILESDIR}/${PN}-2.0.2-systemd-socket.patch"
+ "${FILESDIR}/${PN}-2.0.1-xinetd-installation-fix.patch"
+)
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/cups-config
+)
+
+pkg_setup() {
+ enewgroup lp
+ enewuser lp -1 -1 -1 lp
+ enewgroup lpadmin 106
+
+ use python && python-single-r1_pkg_setup
+
+ if use kernel_linux; then
+ linux-info_pkg_setup
+ if ! linux_config_exists; then
+ ewarn "Can't check the linux kernel configuration."
+ ewarn "You might have some incompatible options enabled."
+ else
+ # recheck that we don't have usblp to collide with libusb
+ if use usb; then
+ if linux_chkconfig_present USB_PRINTER; then
+ eerror "Your usb printers will be managed via libusb. In this case, "
+ eerror "${P} requires the USB_PRINTER support disabled."
+ eerror "Please disable it:"
+ eerror " CONFIG_USB_PRINTER=n"
+ eerror "in /usr/src/linux/.config or"
+ eerror " Device Drivers --->"
+ eerror " USB support --->"
+ eerror " [ ] USB Printer support"
+ eerror "Alternatively, just disable the usb useflag for cups (your printer will still work)."
+ fi
+ else
+ #here we should warn user that he should enable it so he can print
+ if ! linux_chkconfig_present USB_PRINTER; then
+ ewarn "If you plan to use USB printers you should enable the USB_PRINTER"
+ ewarn "support in your kernel."
+ ewarn "Please enable it:"
+ ewarn " CONFIG_USB_PRINTER=y"
+ ewarn "in /usr/src/linux/.config or"
+ ewarn " Device Drivers --->"
+ ewarn " USB support --->"
+ ewarn " [*] USB Printer support"
+ ewarn "Alternatively, enable the usb useflag for cups and use the libusb code."
+ fi
+ fi
+ fi
+ fi
+}
+
+src_prepare() {
+ base_src_prepare
+ epatch_user
+
+ # Remove ".SILENT" rule for verbose output (bug 524338).
+ sed 's#^.SILENT:##g' -i "${S}"/Makedefs.in || die "sed failed"
+
+ # Fix install-sh, posix sh does not have 'function'.
+ sed 's#function gzipcp#gzipcp()#g' -i "${S}/install-sh"
+
+ AT_M4DIR=config-scripts eaclocal
+ eautoconf
+
+ # custom Makefiles
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ export DSOFLAGS="${LDFLAGS}"
+
+ einfo LANGS=\"${LANGS}\"
+ einfo LINGUAS=\"${LINGUAS}\"
+
+ local myconf=()
+
+ if tc-is-static-only; then
+ myconf+=(
+ --disable-shared
+ )
+ fi
+
+ # explicitly specify compiler wrt bug 524340
+ #
+ # need to override KRB5CONFIG for proper flags
+ # https://www.cups.org/str.php?L4423
+ econf \
+ CC="$(tc-getCC)" \
+ CXX="$(tc-getCXX)" \
+ KRB5CONFIG="${EPREFIX}"/usr/bin/${CHOST}-krb5-config \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --localstatedir="${EPREFIX}"/var \
+ --with-rundir="${EPREFIX}"/run/cups \
+ --with-cups-user=lp \
+ --with-cups-group=lp \
+ --with-docdir="${EPREFIX}"/usr/share/cups/html \
+ --with-languages="${LINGUAS}" \
+ --with-system-groups=lpadmin \
+ --with-xinetd=/etc/xinetd.d \
+ $(multilib_native_use_enable acl) \
+ $(use_enable dbus) \
+ $(use_enable debug) \
+ $(use_enable debug debug-guards) \
+ $(multilib_native_use_with java) \
+ $(use_enable kerberos gssapi) \
+ $(multilib_native_use_enable pam) \
+ $(multilib_native_use_with python python "${PYTHON}") \
+ $(use_enable static-libs static) \
+ $(use_enable threads) \
+ $(use_enable ssl gnutls) \
+ $(use_enable systemd) \
+ $(multilib_native_use_enable usb libusb) \
+ $(use_enable zeroconf avahi) \
+ --disable-dnssd \
+ --without-perl \
+ --without-php \
+ $(multilib_is_native_abi && echo --enable-libpaper || echo --disable-libpaper) \
+ "${myconf[@]}"
+
+ # install in /usr/libexec always, instead of using /usr/lib/cups, as that
+ # makes more sense when facing multilib support.
+ sed -i -e "s:SERVERBIN.*:SERVERBIN = \"\$\(BUILDROOT\)${EPREFIX}/usr/libexec/cups\":" Makedefs || die
+ sed -i -e "s:#define CUPS_SERVERBIN.*:#define CUPS_SERVERBIN \"${EPREFIX}/usr/libexec/cups\":" config.h || die
+ sed -i -e "s:cups_serverbin=.*:cups_serverbin=\"${EPREFIX}/usr/libexec/cups\":" cups-config || die
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi; then
+ default
+ else
+ emake libs
+ fi
+}
+
+multilib_src_test() {
+ multilib_is_native_abi && default
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ emake BUILDROOT="${D}" install
+ else
+ emake BUILDROOT="${D}" install-libs install-headers
+ dobin cups-config
+ fi
+}
+
+multilib_src_install_all() {
+ dodoc {CHANGES,CREDITS,README}.txt
+
+ # move the default config file to docs
+ dodoc "${ED}"/etc/cups/cupsd.conf.default
+ rm -f "${ED}"/etc/cups/cupsd.conf.default
+
+ # clean out cups init scripts
+ rm -rf "${ED}"/etc/{init.d/cups,rc*,pam.d/cups}
+
+ # install our init script
+ local neededservices
+ use zeroconf && neededservices+=" avahi-daemon"
+ use dbus && neededservices+=" dbus"
+ [[ -n ${neededservices} ]] && neededservices="need${neededservices}"
+ cp "${FILESDIR}"/cupsd.init.d-r1 "${T}"/cupsd || die
+ sed -i \
+ -e "s/@neededservices@/$neededservices/" \
+ "${T}"/cupsd || die
+ doinitd "${T}"/cupsd
+
+ # install our pam script
+ pamd_mimic_system cups auth account
+
+ if use xinetd ; then
+ # correct path
+ sed -i \
+ -e "s:server = .*:server = /usr/libexec/cups/daemon/cups-lpd:" \
+ "${ED}"/etc/xinetd.d/cups-lpd || die
+ # it is safer to disable this by default, bug #137130
+ grep -w 'disable' "${ED}"/etc/xinetd.d/cups-lpd || \
+ { sed -i -e "s:}:\tdisable = yes\n}:" "${ED}"/etc/xinetd.d/cups-lpd || die ; }
+ # write permission for file owner (root), bug #296221
+ fperms u+w /etc/xinetd.d/cups-lpd || die "fperms failed"
+ else
+ # always configure with --with-xinetd= and clean up later,
+ # bug #525604
+ rm -rf "${ED}"/etc/xinetd.d
+ fi
+
+ keepdir /usr/libexec/cups/driver /usr/share/cups/{model,profiles} \
+ /var/log/cups /var/spool/cups/tmp
+
+ keepdir /etc/cups/{interfaces,ppd,ssl}
+
+ use X || rm -r "${ED}"/usr/share/applications
+
+ # create /etc/cups/client.conf, bug #196967 and #266678
+ echo "ServerName ${EPREFIX}/run/cups/cups.sock" >> "${ED}"/etc/cups/client.conf
+
+ # the following files are now provided by cups-filters:
+ rm -r "${ED}"/usr/share/cups/banners || die
+ rm -r "${ED}"/usr/share/cups/data/testprint || die
+
+ # the following are created by the init script
+ rm -r "${ED}"/var/cache/cups || die
+ rm -r "${ED}"/run || die
+
+ # for the special case of running lprng and cups together, bug 467226
+ if use lprng-compat ; then
+ rm -fv "${ED}"/usr/bin/{lp*,cancel}
+ rm -fv "${ED}"/usr/sbin/lp*
+ rm -fv "${ED}"/usr/share/man/man1/{lp*,cancel*}
+ rm -fv "${ED}"/usr/share/man/man8/lp*
+ ewarn "Not installing lp... binaries, since the lprng-compat useflag is set."
+ ewarn "Unless you plan to install an exotic server setup, you most likely"
+ ewarn "do not want this. Disable the useflag then and all will be fine."
+ fi
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ # Update desktop file database and gtk icon cache (bug 370059)
+ gnome2_icon_cache_update
+ fdo-mime_desktop_database_update
+
+ # not slotted - at most one value
+ if ! [[ "${REPLACING_VERSIONS}" ]]; then
+ echo
+ elog "For information about installing a printer and general cups setup"
+ elog "take a look at: https://wiki.gentoo.org/wiki/Printing"
+ echo
+ fi
+
+ if [[ "${REPLACING_VERSIONS}" ]] && [[ "${REPLACING_VERSIONS}" < "1.6" ]]; then
+ echo
+ elog "CUPS-1.6 no longer supports automatic remote printers or implicit classes"
+ elog "via the CUPS, LDAP, or SLP protocols, i.e. \"network browsing\"."
+ elog "You will have to find printers using zeroconf/avahi instead, enter"
+ elog "the location manually, or run cups-browsed from net-print/cups-filters"
+ elog "which re-adds that functionality as a separate daemon."
+ echo
+ fi
+
+ if [[ "${REPLACING_VERSIONS}" == "1.6.2-r4" ]]; then
+ ewarn
+ ewarn "You are upgrading from the broken version net-print/cups-1.6.2-r4."
+ ewarn "Please rebuild net-print/cups-filters now to make sure everything is OK."
+ ewarn
+ fi
+}
+
+pkg_postrm() {
+ # Update desktop file database and gtk icon cache (bug 370059)
+ gnome2_icon_cache_update
+ fdo-mime_desktop_database_update
+}
diff --git a/net-print/cups/cups-2.0.3.ebuild b/net-print/cups/cups-2.0.3.ebuild
new file mode 100644
index 000000000000..70b18a6d15b3
--- /dev/null
+++ b/net-print/cups/cups-2.0.3.ebuild
@@ -0,0 +1,358 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit autotools base fdo-mime gnome2-utils flag-o-matic linux-info \
+ multilib multilib-minimal pam python-single-r1 user versionator \
+ java-pkg-opt-2 systemd toolchain-funcs
+
+MY_P=${P/_rc/rc}
+MY_P=${MY_P/_beta/b}
+MY_PV=${PV/_rc/rc}
+MY_PV=${MY_PV/_beta/b}
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="http://www.cups.org/cups.git"
+ if [[ ${PV} != 9999 ]]; then
+ EGIT_BRANCH=branch-${PV/.9999}
+ fi
+else
+ SRC_URI="http://www.cups.org/software/${MY_PV}/${MY_P}-source.tar.bz2"
+ KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc ~x86 ~amd64-fbsd ~x86-fbsd ~m68k-mint"
+fi
+
+DESCRIPTION="The Common Unix Printing System"
+HOMEPAGE="http://www.cups.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="acl dbus debug java kerberos lprng-compat pam
+ python selinux +ssl static-libs systemd +threads usb X xinetd zeroconf"
+
+LANGS="ca cs de es fr it ja pt_BR ru"
+for X in ${LANGS} ; do
+ IUSE="${IUSE} +linguas_${X}"
+done
+
+CDEPEND="
+ app-text/libpaper
+ acl? (
+ kernel_linux? (
+ sys-apps/acl
+ sys-apps/attr
+ )
+ )
+ dbus? ( >=sys-apps/dbus-1.6.18-r1[${MULTILIB_USEDEP}] )
+ java? ( >=virtual/jre-1.6 )
+ kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
+ !lprng-compat? ( !net-print/lprng )
+ pam? ( virtual/pam )
+ python? ( ${PYTHON_DEPS} )
+ ssl? (
+ >=dev-libs/libgcrypt-1.5.3:0[${MULTILIB_USEDEP}]
+ >=net-libs/gnutls-2.12.23-r6[${MULTILIB_USEDEP}]
+ )
+ systemd? ( sys-apps/systemd )
+ usb? ( virtual/libusb:1 )
+ X? ( x11-misc/xdg-utils )
+ xinetd? ( sys-apps/xinetd )
+ zeroconf? ( >=net-dns/avahi-0.6.31-r2[${MULTILIB_USEDEP}] )
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-baselibs-20140508
+ !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+ )
+"
+
+DEPEND="${CDEPEND}
+ >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
+"
+
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-cups )
+"
+
+PDEPEND="
+ app-text/ghostscript-gpl[cups]
+ app-text/poppler[utils]
+ >=net-print/cups-filters-1.0.43
+"
+
+REQUIRED_USE="
+ python? ( ${PYTHON_REQUIRED_USE} )
+ usb? ( threads )
+"
+
+# upstream includes an interactive test which is a nono for gentoo
+RESTRICT="test"
+
+S="${WORKDIR}/${MY_P}"
+
+# systemd-socket.patch from Fedora
+PATCHES=(
+ "${FILESDIR}/${PN}-1.6.0-dont-compress-manpages.patch"
+ "${FILESDIR}/${PN}-1.6.0-fix-install-perms.patch"
+ "${FILESDIR}/${PN}-1.4.4-nostrip.patch"
+ "${FILESDIR}/${PN}-2.0.2-rename-systemd-service-files.patch"
+ "${FILESDIR}/${PN}-2.0.2-systemd-socket.patch"
+ "${FILESDIR}/${PN}-2.0.1-xinetd-installation-fix.patch"
+)
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/cups-config
+)
+
+pkg_setup() {
+ enewgroup lp
+ enewuser lp -1 -1 -1 lp
+ enewgroup lpadmin 106
+
+ use python && python-single-r1_pkg_setup
+
+ if use kernel_linux; then
+ linux-info_pkg_setup
+ if ! linux_config_exists; then
+ ewarn "Can't check the linux kernel configuration."
+ ewarn "You might have some incompatible options enabled."
+ else
+ # recheck that we don't have usblp to collide with libusb
+ if use usb; then
+ if linux_chkconfig_present USB_PRINTER; then
+ eerror "Your usb printers will be managed via libusb. In this case, "
+ eerror "${P} requires the USB_PRINTER support disabled."
+ eerror "Please disable it:"
+ eerror " CONFIG_USB_PRINTER=n"
+ eerror "in /usr/src/linux/.config or"
+ eerror " Device Drivers --->"
+ eerror " USB support --->"
+ eerror " [ ] USB Printer support"
+ eerror "Alternatively, just disable the usb useflag for cups (your printer will still work)."
+ fi
+ else
+ #here we should warn user that he should enable it so he can print
+ if ! linux_chkconfig_present USB_PRINTER; then
+ ewarn "If you plan to use USB printers you should enable the USB_PRINTER"
+ ewarn "support in your kernel."
+ ewarn "Please enable it:"
+ ewarn " CONFIG_USB_PRINTER=y"
+ ewarn "in /usr/src/linux/.config or"
+ ewarn " Device Drivers --->"
+ ewarn " USB support --->"
+ ewarn " [*] USB Printer support"
+ ewarn "Alternatively, enable the usb useflag for cups and use the libusb code."
+ fi
+ fi
+ fi
+ fi
+}
+
+src_prepare() {
+ base_src_prepare
+ epatch_user
+
+ # Remove ".SILENT" rule for verbose output (bug 524338).
+ sed 's#^.SILENT:##g' -i "${S}"/Makedefs.in || die "sed failed"
+
+ # Fix install-sh, posix sh does not have 'function'.
+ sed 's#function gzipcp#gzipcp()#g' -i "${S}/install-sh"
+
+ AT_M4DIR=config-scripts eaclocal
+ eautoconf
+
+ # custom Makefiles
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ export DSOFLAGS="${LDFLAGS}"
+
+ einfo LANGS=\"${LANGS}\"
+ einfo LINGUAS=\"${LINGUAS}\"
+
+ local myconf=()
+
+ if tc-is-static-only; then
+ myconf+=(
+ --disable-shared
+ )
+ fi
+
+ # explicitly specify compiler wrt bug 524340
+ #
+ # need to override KRB5CONFIG for proper flags
+ # https://www.cups.org/str.php?L4423
+ econf \
+ CC="$(tc-getCC)" \
+ CXX="$(tc-getCXX)" \
+ KRB5CONFIG="${EPREFIX}"/usr/bin/${CHOST}-krb5-config \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --localstatedir="${EPREFIX}"/var \
+ --with-rundir="${EPREFIX}"/run/cups \
+ --with-cups-user=lp \
+ --with-cups-group=lp \
+ --with-docdir="${EPREFIX}"/usr/share/cups/html \
+ --with-languages="${LINGUAS}" \
+ --with-system-groups=lpadmin \
+ --with-xinetd=/etc/xinetd.d \
+ $(multilib_native_use_enable acl) \
+ $(use_enable dbus) \
+ $(use_enable debug) \
+ $(use_enable debug debug-guards) \
+ $(multilib_native_use_with java) \
+ $(use_enable kerberos gssapi) \
+ $(multilib_native_use_enable pam) \
+ $(multilib_native_use_with python python "${PYTHON}") \
+ $(use_enable static-libs static) \
+ $(use_enable threads) \
+ $(use_enable ssl gnutls) \
+ $(use_enable systemd) \
+ $(multilib_native_use_enable usb libusb) \
+ $(use_enable zeroconf avahi) \
+ --disable-dnssd \
+ --without-perl \
+ --without-php \
+ $(multilib_is_native_abi && echo --enable-libpaper || echo --disable-libpaper) \
+ "${myconf[@]}"
+
+ # install in /usr/libexec always, instead of using /usr/lib/cups, as that
+ # makes more sense when facing multilib support.
+ sed -i -e "s:SERVERBIN.*:SERVERBIN = \"\$\(BUILDROOT\)${EPREFIX}/usr/libexec/cups\":" Makedefs || die
+ sed -i -e "s:#define CUPS_SERVERBIN.*:#define CUPS_SERVERBIN \"${EPREFIX}/usr/libexec/cups\":" config.h || die
+ sed -i -e "s:cups_serverbin=.*:cups_serverbin=\"${EPREFIX}/usr/libexec/cups\":" cups-config || die
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi; then
+ default
+ else
+ emake libs
+ fi
+}
+
+multilib_src_test() {
+ multilib_is_native_abi && default
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ emake BUILDROOT="${D}" install
+ else
+ emake BUILDROOT="${D}" install-libs install-headers
+ dobin cups-config
+ fi
+}
+
+multilib_src_install_all() {
+ dodoc {CHANGES,CREDITS,README}.txt
+
+ # move the default config file to docs
+ dodoc "${ED}"/etc/cups/cupsd.conf.default
+ rm -f "${ED}"/etc/cups/cupsd.conf.default
+
+ # clean out cups init scripts
+ rm -rf "${ED}"/etc/{init.d/cups,rc*,pam.d/cups}
+
+ # install our init script
+ local neededservices
+ use zeroconf && neededservices+=" avahi-daemon"
+ use dbus && neededservices+=" dbus"
+ [[ -n ${neededservices} ]] && neededservices="need${neededservices}"
+ cp "${FILESDIR}"/cupsd.init.d-r1 "${T}"/cupsd || die
+ sed -i \
+ -e "s/@neededservices@/$neededservices/" \
+ "${T}"/cupsd || die
+ doinitd "${T}"/cupsd
+
+ # install our pam script
+ pamd_mimic_system cups auth account
+
+ if use xinetd ; then
+ # correct path
+ sed -i \
+ -e "s:server = .*:server = /usr/libexec/cups/daemon/cups-lpd:" \
+ "${ED}"/etc/xinetd.d/cups-lpd || die
+ # it is safer to disable this by default, bug #137130
+ grep -w 'disable' "${ED}"/etc/xinetd.d/cups-lpd || \
+ { sed -i -e "s:}:\tdisable = yes\n}:" "${ED}"/etc/xinetd.d/cups-lpd || die ; }
+ # write permission for file owner (root), bug #296221
+ fperms u+w /etc/xinetd.d/cups-lpd || die "fperms failed"
+ else
+ # always configure with --with-xinetd= and clean up later,
+ # bug #525604
+ rm -rf "${ED}"/etc/xinetd.d
+ fi
+
+ keepdir /usr/libexec/cups/driver /usr/share/cups/{model,profiles} \
+ /var/log/cups /var/spool/cups/tmp
+
+ keepdir /etc/cups/{interfaces,ppd,ssl}
+
+ use X || rm -r "${ED}"/usr/share/applications
+
+ # create /etc/cups/client.conf, bug #196967 and #266678
+ echo "ServerName ${EPREFIX}/run/cups/cups.sock" >> "${ED}"/etc/cups/client.conf
+
+ # the following files are now provided by cups-filters:
+ rm -r "${ED}"/usr/share/cups/banners || die
+ rm -r "${ED}"/usr/share/cups/data/testprint || die
+
+ # the following are created by the init script
+ rm -r "${ED}"/var/cache/cups || die
+ rm -r "${ED}"/run || die
+
+ # for the special case of running lprng and cups together, bug 467226
+ if use lprng-compat ; then
+ rm -fv "${ED}"/usr/bin/{lp*,cancel}
+ rm -fv "${ED}"/usr/sbin/lp*
+ rm -fv "${ED}"/usr/share/man/man1/{lp*,cancel*}
+ rm -fv "${ED}"/usr/share/man/man8/lp*
+ ewarn "Not installing lp... binaries, since the lprng-compat useflag is set."
+ ewarn "Unless you plan to install an exotic server setup, you most likely"
+ ewarn "do not want this. Disable the useflag then and all will be fine."
+ fi
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ # Update desktop file database and gtk icon cache (bug 370059)
+ gnome2_icon_cache_update
+ fdo-mime_desktop_database_update
+
+ # not slotted - at most one value
+ if ! [[ "${REPLACING_VERSIONS}" ]]; then
+ echo
+ elog "For information about installing a printer and general cups setup"
+ elog "take a look at: https://wiki.gentoo.org/wiki/Printing"
+ echo
+ fi
+
+ if [[ "${REPLACING_VERSIONS}" ]] && [[ "${REPLACING_VERSIONS}" < "1.6" ]]; then
+ echo
+ elog "CUPS-1.6 no longer supports automatic remote printers or implicit classes"
+ elog "via the CUPS, LDAP, or SLP protocols, i.e. \"network browsing\"."
+ elog "You will have to find printers using zeroconf/avahi instead, enter"
+ elog "the location manually, or run cups-browsed from net-print/cups-filters"
+ elog "which re-adds that functionality as a separate daemon."
+ echo
+ fi
+
+ if [[ "${REPLACING_VERSIONS}" == "1.6.2-r4" ]]; then
+ ewarn
+ ewarn "You are upgrading from the broken version net-print/cups-1.6.2-r4."
+ ewarn "Please rebuild net-print/cups-filters now to make sure everything is OK."
+ ewarn
+ fi
+}
+
+pkg_postrm() {
+ # Update desktop file database and gtk icon cache (bug 370059)
+ gnome2_icon_cache_update
+ fdo-mime_desktop_database_update
+}
diff --git a/net-print/cups/cups-9999.ebuild b/net-print/cups/cups-9999.ebuild
new file mode 100644
index 000000000000..d722b0ea6ae7
--- /dev/null
+++ b/net-print/cups/cups-9999.ebuild
@@ -0,0 +1,354 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit autotools base fdo-mime gnome2-utils flag-o-matic linux-info \
+ multilib multilib-minimal pam python-single-r1 user versionator \
+ java-pkg-opt-2 systemd toolchain-funcs
+
+MY_P=${P/_rc/rc}
+MY_P=${MY_P/_beta/b}
+MY_PV=${PV/_rc/rc}
+MY_PV=${MY_PV/_beta/b}
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="http://www.cups.org/cups.git"
+ if [[ ${PV} != 9999 ]]; then
+ EGIT_BRANCH=branch-${PV/.9999}
+ fi
+else
+ SRC_URI="http://www.cups.org/software/${MY_PV}/${MY_P}-source.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~m68k-mint"
+fi
+
+DESCRIPTION="The Common Unix Printing System"
+HOMEPAGE="http://www.cups.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="acl dbus debug java kerberos lprng-compat pam
+ python selinux +ssl static-libs systemd +threads usb X xinetd zeroconf"
+
+LANGS="ca cs de es fr it ja pt_BR ru"
+for X in ${LANGS} ; do
+ IUSE="${IUSE} +linguas_${X}"
+done
+
+CDEPEND="
+ app-text/libpaper
+ acl? (
+ kernel_linux? (
+ sys-apps/acl
+ sys-apps/attr
+ )
+ )
+ dbus? ( >=sys-apps/dbus-1.6.18-r1[${MULTILIB_USEDEP}] )
+ java? ( >=virtual/jre-1.6 )
+ kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
+ !lprng-compat? ( !net-print/lprng )
+ pam? ( virtual/pam )
+ python? ( ${PYTHON_DEPS} )
+ ssl? (
+ >=dev-libs/libgcrypt-1.5.3:0[${MULTILIB_USEDEP}]
+ >=net-libs/gnutls-2.12.23-r6[${MULTILIB_USEDEP}]
+ )
+ systemd? ( sys-apps/systemd )
+ usb? ( virtual/libusb:1 )
+ X? ( x11-misc/xdg-utils )
+ xinetd? ( sys-apps/xinetd )
+ zeroconf? ( >=net-dns/avahi-0.6.31-r2[${MULTILIB_USEDEP}] )
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-baselibs-20140508
+ !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+ )
+"
+
+DEPEND="${CDEPEND}
+ >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
+"
+
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-cups )
+"
+
+PDEPEND="
+ app-text/ghostscript-gpl[cups]
+ app-text/poppler[utils]
+ >=net-print/cups-filters-1.0.43
+"
+
+REQUIRED_USE="
+ python? ( ${PYTHON_REQUIRED_USE} )
+ usb? ( threads )
+"
+
+# upstream includes an interactive test which is a nono for gentoo
+RESTRICT="test"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.6.0-dont-compress-manpages.patch"
+ "${FILESDIR}/${PN}-1.6.0-fix-install-perms.patch"
+ "${FILESDIR}/${PN}-1.4.4-nostrip.patch"
+ "${FILESDIR}/${PN}-2.0.1-rename-systemd-service-files.patch"
+)
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/cups-config
+)
+
+pkg_setup() {
+ enewgroup lp
+ enewuser lp -1 -1 -1 lp
+ enewgroup lpadmin 106
+
+ use python && python-single-r1_pkg_setup
+
+ if use kernel_linux; then
+ linux-info_pkg_setup
+ if ! linux_config_exists; then
+ ewarn "Can't check the linux kernel configuration."
+ ewarn "You might have some incompatible options enabled."
+ else
+ # recheck that we don't have usblp to collide with libusb
+ if use usb; then
+ if linux_chkconfig_present USB_PRINTER; then
+ eerror "Your usb printers will be managed via libusb. In this case, "
+ eerror "${P} requires the USB_PRINTER support disabled."
+ eerror "Please disable it:"
+ eerror " CONFIG_USB_PRINTER=n"
+ eerror "in /usr/src/linux/.config or"
+ eerror " Device Drivers --->"
+ eerror " USB support --->"
+ eerror " [ ] USB Printer support"
+ eerror "Alternatively, just disable the usb useflag for cups (your printer will still work)."
+ fi
+ else
+ #here we should warn user that he should enable it so he can print
+ if ! linux_chkconfig_present USB_PRINTER; then
+ ewarn "If you plan to use USB printers you should enable the USB_PRINTER"
+ ewarn "support in your kernel."
+ ewarn "Please enable it:"
+ ewarn " CONFIG_USB_PRINTER=y"
+ ewarn "in /usr/src/linux/.config or"
+ ewarn " Device Drivers --->"
+ ewarn " USB support --->"
+ ewarn " [*] USB Printer support"
+ ewarn "Alternatively, enable the usb useflag for cups and use the libusb code."
+ fi
+ fi
+ fi
+ fi
+}
+
+src_prepare() {
+ base_src_prepare
+
+ # Remove ".SILENT" rule for verbose output (bug 524338).
+ sed 's#^.SILENT:##g' -i "${S}"/Makedefs.in || die "sed failed"
+
+ # Fix install-sh, posix sh does not have 'function'.
+ sed 's#function gzipcp#gzipcp()#g' -i "${S}/install-sh"
+
+ AT_M4DIR=config-scripts eaclocal
+ eautoconf
+
+ # custom Makefiles
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ export DSOFLAGS="${LDFLAGS}"
+
+ einfo LANGS=\"${LANGS}\"
+ einfo LINGUAS=\"${LINGUAS}\"
+
+ local myconf=()
+
+ if tc-is-static-only; then
+ myconf+=(
+ --disable-shared
+ )
+ fi
+
+ # explicitly specify compiler wrt bug 524340
+ #
+ # need to override KRB5CONFIG for proper flags
+ # https://www.cups.org/str.php?L4423
+ econf \
+ CC="$(tc-getCC)" \
+ CXX="$(tc-getCXX)" \
+ KRB5CONFIG="${EPREFIX}"/usr/bin/${CHOST}-krb5-config \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --localstatedir="${EPREFIX}"/var \
+ --with-rundir="${EPREFIX}"/run/cups \
+ --with-cups-user=lp \
+ --with-cups-group=lp \
+ --with-docdir="${EPREFIX}"/usr/share/cups/html \
+ --with-languages="${LINGUAS}" \
+ --with-system-groups=lpadmin \
+ --with-xinetd=/etc/xinetd.d \
+ $(multilib_native_use_enable acl) \
+ $(use_enable dbus) \
+ $(use_enable debug) \
+ $(use_enable debug debug-guards) \
+ $(multilib_native_use_with java) \
+ $(use_enable kerberos gssapi) \
+ $(multilib_native_use_enable pam) \
+ $(multilib_native_use_with python python "${PYTHON}") \
+ $(use_enable static-libs static) \
+ $(use_enable threads) \
+ $(use_enable ssl gnutls) \
+ $(use_enable systemd) \
+ $(multilib_native_use_enable usb libusb) \
+ $(use_enable zeroconf avahi) \
+ --disable-dnssd \
+ --without-perl \
+ --without-php \
+ $(multilib_is_native_abi && echo --enable-libpaper || echo --disable-libpaper) \
+ "${myconf[@]}"
+
+ # install in /usr/libexec always, instead of using /usr/lib/cups, as that
+ # makes more sense when facing multilib support.
+ sed -i -e "s:SERVERBIN.*:SERVERBIN = \"\$\(BUILDROOT\)${EPREFIX}/usr/libexec/cups\":" Makedefs || die
+ sed -i -e "s:#define CUPS_SERVERBIN.*:#define CUPS_SERVERBIN \"${EPREFIX}/usr/libexec/cups\":" config.h || die
+ sed -i -e "s:cups_serverbin=.*:cups_serverbin=\"${EPREFIX}/usr/libexec/cups\":" cups-config || die
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi; then
+ default
+ else
+ emake libs
+ fi
+}
+
+multilib_src_test() {
+ multilib_is_native_abi && default
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ emake BUILDROOT="${D}" install
+ else
+ emake BUILDROOT="${D}" install-libs install-headers
+ dobin cups-config
+ fi
+}
+
+multilib_src_install_all() {
+ dodoc {CHANGES,CREDITS,README}.txt
+
+ # move the default config file to docs
+ dodoc "${ED}"/etc/cups/cupsd.conf.default
+ rm -f "${ED}"/etc/cups/cupsd.conf.default
+
+ # clean out cups init scripts
+ rm -rf "${ED}"/etc/{init.d/cups,rc*,pam.d/cups}
+
+ # install our init script
+ local neededservices
+ use zeroconf && neededservices+=" avahi-daemon"
+ use dbus && neededservices+=" dbus"
+ [[ -n ${neededservices} ]] && neededservices="need${neededservices}"
+ cp "${FILESDIR}"/cupsd.init.d-r1 "${T}"/cupsd || die
+ sed -i \
+ -e "s/@neededservices@/$neededservices/" \
+ "${T}"/cupsd || die
+ doinitd "${T}"/cupsd
+
+ # install our pam script
+ pamd_mimic_system cups auth account
+
+ if use xinetd ; then
+ # correct path
+ sed -i \
+ -e "s:server = .*:server = /usr/libexec/cups/daemon/cups-lpd:" \
+ "${ED}"/etc/xinetd.d/cups-lpd || die
+ # it is safer to disable this by default, bug #137130
+ grep -w 'disable' "${ED}"/etc/xinetd.d/cups-lpd || \
+ { sed -i -e "s:}:\tdisable = yes\n}:" "${ED}"/etc/xinetd.d/cups-lpd || die ; }
+ # write permission for file owner (root), bug #296221
+ fperms u+w /etc/xinetd.d/cups-lpd || die "fperms failed"
+ else
+ # always configure with --with-xinetd= and clean up later,
+ # bug #525604
+ rm -rf "${ED}"/etc/xinetd.d
+ fi
+
+ keepdir /usr/libexec/cups/driver /usr/share/cups/{model,profiles} \
+ /var/log/cups /var/spool/cups/tmp
+
+ keepdir /etc/cups/{interfaces,ppd,ssl}
+
+ use X || rm -r "${ED}"/usr/share/applications
+
+ # create /etc/cups/client.conf, bug #196967 and #266678
+ echo "ServerName ${EPREFIX}/run/cups/cups.sock" >> "${ED}"/etc/cups/client.conf
+
+ # the following files are now provided by cups-filters:
+ rm -r "${ED}"/usr/share/cups/banners || die
+ rm -r "${ED}"/usr/share/cups/data/testprint || die
+
+ # the following are created by the init script
+ rm -r "${ED}"/var/cache/cups || die
+ rm -r "${ED}"/run || die
+
+ # for the special case of running lprng and cups together, bug 467226
+ if use lprng-compat ; then
+ rm -fv "${ED}"/usr/bin/{lp*,cancel}
+ rm -fv "${ED}"/usr/sbin/lp*
+ rm -fv "${ED}"/usr/share/man/man1/{lp*,cancel*}
+ rm -fv "${ED}"/usr/share/man/man8/lp*
+ ewarn "Not installing lp... binaries, since the lprng-compat useflag is set."
+ ewarn "Unless you plan to install an exotic server setup, you most likely"
+ ewarn "do not want this. Disable the useflag then and all will be fine."
+ fi
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ # Update desktop file database and gtk icon cache (bug 370059)
+ gnome2_icon_cache_update
+ fdo-mime_desktop_database_update
+
+ # not slotted - at most one value
+ if ! [[ "${REPLACING_VERSIONS}" ]]; then
+ echo
+ elog "For information about installing a printer and general cups setup"
+ elog "take a look at: https://wiki.gentoo.org/wiki/Printing"
+ echo
+ fi
+
+ if [[ "${REPLACING_VERSIONS}" ]] && [[ "${REPLACING_VERSIONS}" < "1.6" ]]; then
+ echo
+ elog "CUPS-1.6 no longer supports automatic remote printers or implicit classes"
+ elog "via the CUPS, LDAP, or SLP protocols, i.e. \"network browsing\"."
+ elog "You will have to find printers using zeroconf/avahi instead, enter"
+ elog "the location manually, or run cups-browsed from net-print/cups-filters"
+ elog "which re-adds that functionality as a separate daemon."
+ echo
+ fi
+
+ if [[ "${REPLACING_VERSIONS}" == "1.6.2-r4" ]]; then
+ ewarn
+ ewarn "You are upgrading from the broken version net-print/cups-1.6.2-r4."
+ ewarn "Please rebuild net-print/cups-filters now to make sure everything is OK."
+ ewarn
+ fi
+}
+
+pkg_postrm() {
+ # Update desktop file database and gtk icon cache (bug 370059)
+ gnome2_icon_cache_update
+ fdo-mime_desktop_database_update
+}
diff --git a/net-print/cups/files/cups-1.4.4-nostrip.patch b/net-print/cups/files/cups-1.4.4-nostrip.patch
new file mode 100644
index 000000000000..cd2b07042cec
--- /dev/null
+++ b/net-print/cups/files/cups-1.4.4-nostrip.patch
@@ -0,0 +1,14 @@
+# Source: Gentoo
+
+diff -urN cups-1.4.4/config-scripts/cups-compiler.m4 cups-1.4.4.new/config-scripts/cups-compiler.m4
+--- cups-1.4.4/config-scripts/cups-compiler.m4 2009-05-17 02:13:47.000000000 +0200
++++ cups-1.4.4.new/config-scripts/cups-compiler.m4 2010-08-12 19:19:45.937020635 +0200
+@@ -30,7 +30,7 @@
+ if test x$enable_debug = xyes; then
+ OPTIM="-g"
+ else
+- INSTALL_STRIP="-s"
++ INSTALL_STRIP=""
+ fi
+
+ dnl Debug printfs can slow things down, so provide a separate option for that
diff --git a/net-print/cups/files/cups-1.6.0-dont-compress-manpages.patch b/net-print/cups/files/cups-1.6.0-dont-compress-manpages.patch
new file mode 100644
index 000000000000..62db46eea00d
--- /dev/null
+++ b/net-print/cups/files/cups-1.6.0-dont-compress-manpages.patch
@@ -0,0 +1,19 @@
+Index: config-scripts/cups-manpages.m4
+===================================================================
+--- config-scripts/cups-manpages.m4 (Revision 10458)
++++ config-scripts/cups-manpages.m4 (Arbeitskopie)
+@@ -69,10 +69,10 @@
+ ;;
+ Linux* | GNU* | Darwin*)
+ # Linux, GNU Hurd, and OS X
+- MAN1EXT=1.gz
+- MAN5EXT=5.gz
+- MAN7EXT=7.gz
+- MAN8EXT=8.gz
++ MAN1EXT=1
++ MAN5EXT=5
++ MAN7EXT=7
++ MAN8EXT=8
+ MAN8DIR=8
+ ;;
+ *)
diff --git a/net-print/cups/files/cups-1.6.0-fix-install-perms.patch b/net-print/cups/files/cups-1.6.0-fix-install-perms.patch
new file mode 100644
index 000000000000..2d7a77c44f3d
--- /dev/null
+++ b/net-print/cups/files/cups-1.6.0-fix-install-perms.patch
@@ -0,0 +1,25 @@
+Index: Makedefs.in
+===================================================================
+--- Makedefs.in (Revision 10520)
++++ Makedefs.in (Arbeitskopie)
+@@ -40,14 +40,14 @@
+ # Installation programs...
+ #
+
+-INSTALL_BIN = $(LIBTOOL) $(INSTALL) -c -m 555 @INSTALL_STRIP@
+-INSTALL_COMPDATA = $(INSTALL) -c -m 444 @INSTALL_GZIP@
++INSTALL_BIN = $(LIBTOOL) $(INSTALL) -c -m 755 @INSTALL_STRIP@
++INSTALL_COMPDATA = $(INSTALL) -c -m 644 @INSTALL_GZIP@
+ INSTALL_CONFIG = $(INSTALL) -c -m @CUPS_CONFIG_FILE_PERM@
+-INSTALL_DATA = $(INSTALL) -c -m 444
++INSTALL_DATA = $(INSTALL) -c -m 644
+ INSTALL_DIR = $(INSTALL) -d
+-INSTALL_LIB = $(LIBTOOL) $(INSTALL) -c -m 555 @INSTALL_STRIP@
+-INSTALL_MAN = $(INSTALL) -c -m 444
+-INSTALL_SCRIPT = $(INSTALL) -c -m 555
++INSTALL_LIB = $(LIBTOOL) $(INSTALL) -c -m 755 @INSTALL_STRIP@
++INSTALL_MAN = $(INSTALL) -c -m 644
++INSTALL_SCRIPT = $(INSTALL) -c -m 755
+
+ #
+ # Default user, group, and system groups for the scheduler...
diff --git a/net-print/cups/files/cups-1.7.2-systemd-socket-2.patch b/net-print/cups/files/cups-1.7.2-systemd-socket-2.patch
new file mode 100644
index 000000000000..f4e8640bda7e
--- /dev/null
+++ b/net-print/cups/files/cups-1.7.2-systemd-socket-2.patch
@@ -0,0 +1,391 @@
+diff -ruN cups-1.7.2.orig/Makedefs.in cups-1.7.2/Makedefs.in
+--- cups-1.7.2.orig/Makedefs.in 2013-07-17 17:21:18.000000000 +0200
++++ cups-1.7.2/Makedefs.in 2014-04-15 13:24:45.594054459 +0200
+@@ -134,6 +134,7 @@
+ CXXLIBS = @CXXLIBS@
+ DBUS_NOTIFIER = @DBUS_NOTIFIER@
+ DBUS_NOTIFIERLIBS = @DBUS_NOTIFIERLIBS@
++SYSTEMD_UNITS = @SYSTEMD_UNITS@
+ DNSSD_BACKEND = @DNSSD_BACKEND@
+ DSOFLAGS = -L../cups @DSOFLAGS@
+ DSOLIBS = @DSOLIBS@ $(COMMONLIBS)
+@@ -141,6 +142,7 @@
+ IPPFIND_BIN = @IPPFIND_BIN@
+ IPPFIND_MAN = @IPPFIND_MAN@
+ LAUNCHDLIBS = @LAUNCHDLIBS@
++SDLIBS = @SDLIBS@
+ LDFLAGS = -L../cgi-bin -L../cups -L../filter -L../ppdc \
+ -L../scheduler @LDARCHFLAGS@ \
+ @LDFLAGS@ @RELROFLAGS@ @PIEFLAGS@ $(OPTIM)
+@@ -232,6 +234,7 @@
+
+ DEFAULT_LAUNCHD_CONF = @DEFAULT_LAUNCHD_CONF@
+ DBUSDIR = @DBUSDIR@
++SYSTEMDUNITDIR = $(BUILDROOT)@systemdsystemunitdir@
+
+
+ #
+diff -ruN cups-1.7.2.orig/config-scripts/cups-systemd.m4 cups-1.7.2/config-scripts/cups-systemd.m4
+--- cups-1.7.2.orig/config-scripts/cups-systemd.m4 1970-01-01 01:00:00.000000000 +0100
++++ cups-1.7.2/config-scripts/cups-systemd.m4 2014-04-15 13:24:45.592054459 +0200
+@@ -0,0 +1,36 @@
++dnl
++dnl "$Id$"
++dnl
++dnl systemd stuff for CUPS.
++
++dnl Find whether systemd is available
++
++SDLIBS=""
++AC_ARG_WITH([systemdsystemunitdir],
++ AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files]),
++ [], [with_systemdsystemunitdir=$($PKGCONFIG --variable=systemdsystemunitdir systemd)])
++if test "x$with_systemdsystemunitdir" != xno; then
++ AC_MSG_CHECKING(for libsystemd-daemon)
++ AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])
++ if $PKGCONFIG --exists libsystemd-daemon; then
++ AC_MSG_RESULT(yes)
++ SDCFLAGS=`$PKGCONFIG --cflags libsystemd-daemon`
++ SDLIBS=`$PKGCONFIG --libs libsystemd-daemon`
++ AC_DEFINE(HAVE_SYSTEMD)
++ else
++ AC_MSG_RESULT(no)
++ fi
++fi
++
++if test -n "$with_systemdsystemunitdir" -a "x$with_systemdsystemunitdir" != xno ; then
++ SYSTEMD_UNITS="cups.service cups.socket cups.path"
++else
++ SYSTEMD_UNITS=""
++fi
++
++AC_SUBST(SYSTEMD_UNITS)
++AC_SUBST(SDLIBS)
++
++dnl
++dnl "$Id$"
++dnl
+diff -ruN cups-1.7.2.orig/config.h.in cups-1.7.2/config.h.in
+--- cups-1.7.2.orig/config.h.in 2014-02-27 16:57:59.000000000 +0100
++++ cups-1.7.2/config.h.in 2014-04-15 13:24:45.592054459 +0200
+@@ -451,6 +451,13 @@
+
+
+ /*
++ * Do we have systemd support?
++ */
++
++#undef HAVE_SYSTEMD
++
++
++/*
+ * Various scripting languages...
+ */
+
+diff -ruN cups-1.7.2.orig/configure.in cups-1.7.2/configure.in
+--- cups-1.7.2.orig/configure.in 2013-07-08 23:15:13.000000000 +0200
++++ cups-1.7.2/configure.in 2014-04-15 13:24:45.593054459 +0200
+@@ -33,6 +33,7 @@
+ sinclude(config-scripts/cups-largefile.m4)
+ sinclude(config-scripts/cups-dnssd.m4)
+ sinclude(config-scripts/cups-launchd.m4)
++sinclude(config-scripts/cups-systemd.m4)
+ sinclude(config-scripts/cups-defaults.m4)
+ sinclude(config-scripts/cups-scripting.m4)
+
+@@ -67,6 +68,9 @@
+ conf/snmp.conf
+ cups-config
+ data/testprint
++ data/cups.service
++ data/cups.socket
++ data/cups.path
+ desktop/cups.desktop
+ doc/help/ref-cups-files-conf.html
+ doc/help/ref-cupsd-conf.html
+diff -ruN cups-1.7.2.orig/cups/usersys.c cups-1.7.2/cups/usersys.c
+--- cups-1.7.2.orig/cups/usersys.c 2014-03-05 22:22:12.000000000 +0100
++++ cups-1.7.2/cups/usersys.c 2014-04-15 13:24:45.593054459 +0200
+@@ -1050,7 +1050,7 @@
+ struct stat sockinfo; /* Domain socket information */
+
+ if (!stat(CUPS_DEFAULT_DOMAINSOCKET, &sockinfo) &&
+- (sockinfo.st_mode & S_IRWXO) == S_IRWXO)
++ (sockinfo.st_mode & (S_IROTH | S_IWOTH)) == (S_IROTH | S_IWOTH))
+ cups_server = CUPS_DEFAULT_DOMAINSOCKET;
+ else
+ #endif /* CUPS_DEFAULT_DOMAINSOCKET */
+diff -ruN cups-1.7.2.orig/data/Makefile cups-1.7.2/data/Makefile
+--- cups-1.7.2.orig/data/Makefile 2013-05-29 13:51:34.000000000 +0200
++++ cups-1.7.2/data/Makefile 2014-04-15 13:24:45.594054459 +0200
+@@ -100,6 +100,12 @@
+ $(INSTALL_DATA) $$file $(DATADIR)/ppdc; \
+ done
+ $(INSTALL_DIR) -m 755 $(DATADIR)/profiles
++ if test "x$(SYSTEMD_UNITS)" != "x" ; then \
++ $(INSTALL_DIR) -m 755 $(SYSTEMDUNITDIR); \
++ for file in $(SYSTEMD_UNITS); do \
++ $(INSTALL_DATA) $$file $(SYSTEMDUNITDIR); \
++ done; \
++ fi
+
+
+ #
+@@ -143,6 +149,9 @@
+ -$(RMDIR) $(DATADIR)/data
+ -$(RMDIR) $(DATADIR)/banners
+ -$(RMDIR) $(DATADIR)
++ for file in $(SYSTEMD_UNITS); do \
++ $(RM) $(SYSTEMDUNITDIR)/$$file; \
++ done
+
+
+ #
+diff -ruN cups-1.7.2.orig/data/cups.path.in cups-1.7.2/data/cups.path.in
+--- cups-1.7.2.orig/data/cups.path.in 1970-01-01 01:00:00.000000000 +0100
++++ cups-1.7.2/data/cups.path.in 2014-04-15 13:24:45.593054459 +0200
+@@ -0,0 +1,8 @@
++[Unit]
++Description=CUPS Printer Service Spool
++
++[Path]
++PathExistsGlob=@CUPS_REQUESTS@/d*
++
++[Install]
++WantedBy=multi-user.target
+diff -ruN cups-1.7.2.orig/data/cups.service.in cups-1.7.2/data/cups.service.in
+--- cups-1.7.2.orig/data/cups.service.in 1970-01-01 01:00:00.000000000 +0100
++++ cups-1.7.2/data/cups.service.in 2014-04-15 13:24:45.594054459 +0200
+@@ -0,0 +1,9 @@
++[Unit]
++Description=CUPS Printing Service
++
++[Service]
++ExecStart=@sbindir@/cupsd -f
++
++[Install]
++Also=cups.socket cups.path
++WantedBy=printer.target
+diff -ruN cups-1.7.2.orig/data/cups.socket.in cups-1.7.2/data/cups.socket.in
+--- cups-1.7.2.orig/data/cups.socket.in 1970-01-01 01:00:00.000000000 +0100
++++ cups-1.7.2/data/cups.socket.in 2014-04-15 13:24:45.594054459 +0200
+@@ -0,0 +1,10 @@
++[Unit]
++Description=CUPS Printing Service Sockets
++
++[Socket]
++ListenStream=@CUPS_DEFAULT_DOMAINSOCKET@
++ListenStream=631
++BindIPv6Only=ipv6-only
++
++[Install]
++WantedBy=sockets.target
+diff -ruN cups-1.7.2.orig/scheduler/Makefile cups-1.7.2/scheduler/Makefile
+--- cups-1.7.2.orig/scheduler/Makefile 2013-05-29 13:51:34.000000000 +0200
++++ cups-1.7.2/scheduler/Makefile 2014-04-15 13:24:45.595054459 +0200
+@@ -381,7 +381,7 @@
+ $(CC) $(LDFLAGS) -o cupsd $(CUPSDOBJS) -L. -lcupsmime \
+ $(LIBZ) $(SSLLIBS) $(LIBSLP) $(LIBLDAP) $(PAMLIBS) \
+ $(LIBPAPER) $(LIBMALLOC) $(SERVERLIBS) $(DNSSDLIBS) $(LIBS) \
+- $(LIBGSSAPI) $(LIBWRAP)
++ $(LIBGSSAPI) $(LIBWRAP) $(SDLIBS)
+
+ cupsd-static: $(CUPSDOBJS) libcupsmime.a ../cups/$(LIBCUPSSTATIC)
+ echo Linking $@...
+@@ -389,7 +389,7 @@
+ $(LIBZ) $(SSLLIBS) $(LIBSLP) $(LIBLDAP) $(PAMLIBS) \
+ ../cups/$(LIBCUPSSTATIC) $(COMMONLIBS) $(LIBZ) $(LIBPAPER) \
+ $(LIBMALLOC) $(SERVERLIBS) $(DNSSDLIBS) $(LIBGSSAPI) \
+- $(LIBWRAP)
++ $(LIBWRAP) $(SDLIBS)
+
+ tls.o: tls-darwin.c tls-gnutls.c tls-openssl.c
+
+diff -ruN cups-1.7.2.orig/scheduler/client.h cups-1.7.2/scheduler/client.h
+--- cups-1.7.2.orig/scheduler/client.h 2013-08-02 00:23:18.000000000 +0200
++++ cups-1.7.2/scheduler/client.h 2014-04-15 13:24:45.594054459 +0200
+@@ -79,6 +79,9 @@
+ int fd; /* File descriptor for this server */
+ http_addr_t address; /* Bind address of socket */
+ http_encryption_t encryption; /* To encrypt or not to encrypt... */
++#ifdef HAVE_SYSTEMD
++ int is_systemd; /* Is this a systemd socket? */
++#endif /* HAVE_SYSTEMD */
+ } cupsd_listener_t;
+
+
+diff -ruN cups-1.7.2.orig/scheduler/listen.c cups-1.7.2/scheduler/listen.c
+--- cups-1.7.2.orig/scheduler/listen.c 2013-05-29 13:51:34.000000000 +0200
++++ cups-1.7.2/scheduler/listen.c 2014-04-15 13:24:45.594054459 +0200
+@@ -401,7 +401,11 @@
+ lis;
+ lis = (cupsd_listener_t *)cupsArrayNext(Listeners))
+ {
+- if (lis->fd != -1)
++ if (lis->fd != -1
++#ifdef HAVE_SYSTEMD
++ && !lis->is_systemd
++#endif /* HAVE_SYSTEMD */
++ )
+ {
+ #ifdef WIN32
+ closesocket(lis->fd);
+diff -ruN cups-1.7.2.orig/scheduler/main.c cups-1.7.2/scheduler/main.c
+--- cups-1.7.2.orig/scheduler/main.c 2014-03-21 19:18:56.000000000 +0100
++++ cups-1.7.2/scheduler/main.c 2014-04-15 13:24:45.595054459 +0200
+@@ -39,6 +39,10 @@
+ # endif /* !LAUNCH_JOBKEY_SERVICEIPC */
+ #endif /* HAVE_LAUNCH_H */
+
++#ifdef HAVE_SYSTEMD
++#include <systemd/sd-daemon.h>
++#endif /* HAVE_SYSTEMD */
++
+ #if defined(HAVE_MALLOC_H) && defined(HAVE_MALLINFO)
+ # include <malloc.h>
+ #endif /* HAVE_MALLOC_H && HAVE_MALLINFO */
+@@ -64,6 +68,9 @@
+ static void launchd_checkin(void);
+ static void launchd_checkout(void);
+ #endif /* HAVE_LAUNCHD */
++#ifdef HAVE_SYSTEMD
++static int systemd_checkin(void);
++#endif /* HAVE_SYSTEMD */
+ static void parent_handler(int sig);
+ static void process_children(void);
+ static void sigchld_handler(int sig);
+@@ -553,6 +560,14 @@
+ }
+ #endif /* HAVE_LAUNCHD */
+
++#ifdef HAVE_SYSTEMD
++ /*
++ * If we were started by systemd get the listen sockets file descriptors...
++ */
++ if (systemd_checkin() < 0)
++ exit(EXIT_FAILURE);
++#endif /* HAVE_SYSTEMD */
++
+ /*
+ * Startup the server...
+ */
+@@ -741,6 +756,16 @@
+ }
+ #endif /* HAVE_LAUNCHD */
+
++#ifdef HAVE_SYSTEMD
++ /*
++ * If we were started by systemd get the listen sockets file
++ * descriptors...
++ */
++
++ if (systemd_checkin() < 0)
++ exit(EXIT_FAILURE);
++#endif /* HAVE_SYSTEMD */
++
+ /*
+ * Startup the server...
+ */
+@@ -1490,6 +1515,102 @@
+ }
+ #endif /* HAVE_LAUNCHD */
+
++#ifdef HAVE_SYSTEMD
++static int
++systemd_checkin(void)
++{
++ int n, fd;
++
++ n = sd_listen_fds(0);
++ if (n < 0)
++ {
++ cupsdLogMessage(CUPSD_LOG_ERROR,
++ "systemd_checkin: Failed to acquire sockets "
++ "from systemd - %s -- skipping systemd activation",
++ strerror(-n));
++ return (1);
++ }
++
++ if (n == 0)
++ return (0);
++
++ for (fd = SD_LISTEN_FDS_START; fd < SD_LISTEN_FDS_START + n; fd ++)
++ {
++ http_addr_t addr;
++ socklen_t addrlen = sizeof (addr);
++ int r;
++ cupsd_listener_t *lis;
++ char s[256];
++
++ r = sd_is_socket(fd, AF_UNSPEC, SOCK_STREAM, 1);
++ if (r < 0) {
++ cupsdLogMessage(CUPSD_LOG_ERROR,
++ "systemd_checkin: Unable to verify socket type - %s",
++ strerror(-r));
++ continue;
++ }
++
++ if (!r) {
++ cupsdLogMessage(CUPSD_LOG_ERROR,
++ "systemd_checkin: Socket not of the right type");
++ continue;
++ }
++
++ if (getsockname(fd, (struct sockaddr*) &addr, &addrlen))
++ {
++ cupsdLogMessage(CUPSD_LOG_ERROR,
++ "systemd_checkin: Unable to get local address - %s",
++ strerror(errno));
++ continue;
++ }
++
++ /*
++ * Try to match the systemd socket address to one of the listeners...
++ */
++
++ for (lis = (cupsd_listener_t *)cupsArrayFirst(Listeners);
++ lis;
++ lis = (cupsd_listener_t *)cupsArrayNext(Listeners))
++ if (httpAddrEqual(&lis->address, &addr))
++ break;
++
++ if (lis)
++ {
++ cupsdLogMessage(CUPSD_LOG_DEBUG,
++ "systemd_checkin: Matched existing listener %s with fd %d...",
++ httpAddrString(&(lis->address), s, sizeof(s)), fd);
++ }
++ else
++ {
++ cupsdLogMessage(CUPSD_LOG_DEBUG,
++ "systemd_checkin: Adding new listener %s with fd %d...",
++ httpAddrString(&addr, s, sizeof(s)), fd);
++
++ if ((lis = calloc(1, sizeof(cupsd_listener_t))) == NULL)
++ {
++ cupsdLogMessage(CUPSD_LOG_ERROR,
++ "systemd_checkin: Unable to allocate listener - "
++ "%s.", strerror(errno));
++ return (-ENOMEM);
++ }
++
++ cupsArrayAdd(Listeners, lis);
++
++ memcpy(&lis->address, &addr, sizeof(lis->address));
++ }
++
++ lis->fd = fd;
++ lis->is_systemd = 1;
++
++# ifdef HAVE_SSL
++ if (_httpAddrPort(&(lis->address)) == 443)
++ lis->encryption = HTTP_ENCRYPT_ALWAYS;
++# endif /* HAVE_SSL */
++ }
++
++ return (0);
++}
++#endif /* HAVE_SYSTEMD */
+
+ /*
+ * 'parent_handler()' - Catch USR1/CHLD signals...
diff --git a/net-print/cups/files/cups-2.0.0-rename-systemd-service-files.patch b/net-print/cups/files/cups-2.0.0-rename-systemd-service-files.patch
new file mode 100644
index 000000000000..c93f3228e186
--- /dev/null
+++ b/net-print/cups/files/cups-2.0.0-rename-systemd-service-files.patch
@@ -0,0 +1,177 @@
+From caebb5eb5194b89da1ff08cca8d35ddfe6b293d3 Mon Sep 17 00:00:00 2001
+From: Matthias Maier <tamiko@kyomu.43-1.org>
+Date: Thu, 16 Oct 2014 01:25:23 +0200
+Subject: [PATCH] change systemd service files to gentoo naming scheme
+
+---
+ configure.ac | 6 +++---
+ scheduler/Makefile | 14 +++++++-------
+ scheduler/cups.path.in | 8 ++++++++
+ scheduler/cups.service.in | 10 ++++++++++
+ scheduler/cups.socket.in | 12 ++++++++++++
+ scheduler/org.cups.cupsd.path.in | 8 --------
+ scheduler/org.cups.cupsd.service.in | 10 ----------
+ scheduler/org.cups.cupsd.socket.in | 12 ------------
+ 8 files changed, 40 insertions(+), 40 deletions(-)
+ create mode 100644 scheduler/cups.path.in
+ create mode 100644 scheduler/cups.service.in
+ create mode 100644 scheduler/cups.socket.in
+ delete mode 100644 scheduler/org.cups.cupsd.path.in
+ delete mode 100644 scheduler/org.cups.cupsd.service.in
+ delete mode 100644 scheduler/org.cups.cupsd.socket.in
+
+diff --git a/configure.ac b/configure.ac
+index 21d7f93..cb5db92 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -81,9 +81,9 @@ AC_OUTPUT(Makedefs
+ scheduler/cups.sh
+ scheduler/cups.xml
+ scheduler/org.cups.cups-lpd.plist
+- scheduler/org.cups.cupsd.path
+- scheduler/org.cups.cupsd.service
+- scheduler/org.cups.cupsd.socket
++ scheduler/cups.path
++ scheduler/cups.service
++ scheduler/cups.socket
+ templates/header.tmpl
+ packaging/cups.list
+ $LANGFILES)
+diff --git a/scheduler/Makefile b/scheduler/Makefile
+index c0c54a4..bf1ae32 100644
+--- a/scheduler/Makefile
++++ b/scheduler/Makefile
+@@ -192,7 +192,7 @@ install-data:
+ if test "x$(LAUNCHD_DIR)" != x; then \
+ echo Installing launchd configuration files...; \
+ $(INSTALL_DIR) $(BUILDROOT)$(LAUNCHD_DIR); \
+- $(INSTALL_DATA) org.cups.cupsd.plist $(BUILDROOT)$(LAUNCHD_DIR); \
++ $(INSTALL_DATA) cups.plist $(BUILDROOT)$(LAUNCHD_DIR); \
+ $(INSTALL_DATA) org.cups.cups-lpd.plist $(BUILDROOT)$(LAUNCHD_DIR); \
+ fi
+ if test "x$(SMFMANIFESTDIR)" != x; then \
+@@ -203,9 +203,9 @@ install-data:
+ if test "x$(SYSTEMD_DIR)" != x; then \
+ echo Installing systemd configuration files...; \
+ $(INSTALL_DIR) $(BUILDROOT)$(SYSTEMD_DIR); \
+- $(INSTALL_DATA) org.cups.cupsd.path $(BUILDROOT)$(SYSTEMD_DIR); \
+- $(INSTALL_DATA) org.cups.cupsd.service $(BUILDROOT)$(SYSTEMD_DIR); \
+- $(INSTALL_DATA) org.cups.cupsd.socket $(BUILDROOT)$(SYSTEMD_DIR); \
++ $(INSTALL_DATA) cups.path $(BUILDROOT)$(SYSTEMD_DIR); \
++ $(INSTALL_DATA) cups.service $(BUILDROOT)$(SYSTEMD_DIR); \
++ $(INSTALL_DATA) cups.socket $(BUILDROOT)$(SYSTEMD_DIR); \
+ fi
+ if test "x$(XINETD)" != x; then \
+ echo Installing xinetd configuration file for cups-lpd...; \
+@@ -335,9 +335,9 @@ uninstall:
+ fi
+ if test "x$SYSTEMD_DIR" != x; then \
+ echo Uninstalling systemd files...; \
+- $(RM) $(BUILDROOT)$(SYSTEMD_DIR)/org.cups.cupsd.path; \
+- $(RM) $(BUILDROOT)$(SYSTEMD_DIR)/org.cups.cupsd.service; \
+- $(RM) $(BUILDROOT)$(SYSTEMD_DIR)/org.cups.cupsd.socket; \
++ $(RM) $(BUILDROOT)$(SYSTEMD_DIR)/cups.path; \
++ $(RM) $(BUILDROOT)$(SYSTEMD_DIR)/cups.service; \
++ $(RM) $(BUILDROOT)$(SYSTEMD_DIR)/cups.socket; \
+ fi
+ if test "x$(SMFMANIFESTDIR)" != x; then \
+ echo Uninstalling SMF manifest file...;\
+diff --git a/scheduler/cups.path.in b/scheduler/cups.path.in
+new file mode 100644
+index 0000000..4281d6a
+--- /dev/null
++++ b/scheduler/cups.path.in
+@@ -0,0 +1,8 @@
++[Unit]
++Description=CUPS Scheduler
++
++[Path]
++PathExistsGlob=@CUPS_CACHEDIR@/d*
++
++[Install]
++WantedBy=multi-user.target
+diff --git a/scheduler/cups.service.in b/scheduler/cups.service.in
+new file mode 100644
+index 0000000..f8912eb
+--- /dev/null
++++ b/scheduler/cups.service.in
+@@ -0,0 +1,10 @@
++[Unit]
++Description=CUPS Scheduler
++
++[Service]
++ExecStart=@sbindir@/cupsd -l
++Type=simple
++
++[Install]
++Also=cups.socket cups.path
++WantedBy=printer.target
+diff --git a/scheduler/cups.socket.in b/scheduler/cups.socket.in
+new file mode 100644
+index 0000000..cd98aa5
+--- /dev/null
++++ b/scheduler/cups.socket.in
+@@ -0,0 +1,12 @@
++[Unit]
++Description=CUPS Scheduler
++
++[Socket]
++ListenStream=@CUPS_DEFAULT_DOMAINSOCKET@
++ListenStream=[::1]:631
++ListenStream=127.0.0.1:631
++BindIPv6Only=ipv6-only
++ReusePort=true
++
++[Install]
++WantedBy=sockets.target
+diff --git a/scheduler/org.cups.cupsd.path.in b/scheduler/org.cups.cupsd.path.in
+deleted file mode 100644
+index 1bccc6f..0000000
+--- a/scheduler/org.cups.cupsd.path.in
++++ /dev/null
+@@ -1,8 +0,0 @@
+-[Unit]
+-Description=CUPS Scheduler
+-
+-[Path]
+-PathExists=@CUPS_CACHEDIR@/org.cups.cupsd
+-
+-[Install]
+-WantedBy=multi-user.target
+diff --git a/scheduler/org.cups.cupsd.service.in b/scheduler/org.cups.cupsd.service.in
+deleted file mode 100644
+index 4390016..0000000
+--- a/scheduler/org.cups.cupsd.service.in
++++ /dev/null
+@@ -1,10 +0,0 @@
+-[Unit]
+-Description=CUPS Scheduler
+-
+-[Service]
+-ExecStart=@sbindir@/cupsd -l
+-Type=simple
+-
+-[Install]
+-Also=org.cups.cupsd.socket org.cups.cupsd.path
+-WantedBy=printer.target
+diff --git a/scheduler/org.cups.cupsd.socket.in b/scheduler/org.cups.cupsd.socket.in
+deleted file mode 100644
+index cd98aa5..0000000
+--- a/scheduler/org.cups.cupsd.socket.in
++++ /dev/null
+@@ -1,12 +0,0 @@
+-[Unit]
+-Description=CUPS Scheduler
+-
+-[Socket]
+-ListenStream=@CUPS_DEFAULT_DOMAINSOCKET@
+-ListenStream=[::1]:631
+-ListenStream=127.0.0.1:631
+-BindIPv6Only=ipv6-only
+-ReusePort=true
+-
+-[Install]
+-WantedBy=sockets.target
+--
+2.0.4
+
diff --git a/net-print/cups/files/cups-2.0.1-fix-compilation.patch b/net-print/cups/files/cups-2.0.1-fix-compilation.patch
new file mode 100644
index 000000000000..5828b6801306
--- /dev/null
+++ b/net-print/cups/files/cups-2.0.1-fix-compilation.patch
@@ -0,0 +1,25 @@
+From 7bb9184b40bea3c4b9f46362642e5d40053a3ae1 Mon Sep 17 00:00:00 2001
+From: Matthias Maier <tamiko@kyomu.43-1.org>
+Date: Wed, 19 Nov 2014 18:44:33 +0100
+Subject: [PATCH] fix compilation
+
+---
+ test/ippserver.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/test/ippserver.c b/test/ippserver.c
+index c785e5f..1c64668 100644
+--- a/test/ippserver.c
++++ b/test/ippserver.c
+@@ -421,7 +421,7 @@ static int valid_job_attributes(_ipp_client_t *client);
+
+ # ifdef HAVE_DNSSD
+ static DNSServiceRef DNSSDMaster = NULL;
+-# else /* HAVE_AVAHI */
++# elif defined(HAVE_AVAHI)
+ static AvahiThreadedPoll *DNSSDMaster = NULL;
+ static AvahiClient *DNSSDClient = NULL;
+ # endif /* HAVE_DNSSD */
+--
+2.0.4
+
diff --git a/net-print/cups/files/cups-2.0.1-fix-linkage-to-gnutls.patch b/net-print/cups/files/cups-2.0.1-fix-linkage-to-gnutls.patch
new file mode 100644
index 000000000000..dafb6e14b0e6
--- /dev/null
+++ b/net-print/cups/files/cups-2.0.1-fix-linkage-to-gnutls.patch
@@ -0,0 +1,24 @@
+--- a/cups/usersys.c
++++ b/cups/usersys.c
+@@ -1044,7 +1044,9 @@
+ options = 0;
+ }
+
++#ifdef HAVE_SSL
+ _httpTLSSetOptions(options);
++#endif /* HAVE_SSL */
+ }
+ }
+
+--- a/scheduler/conf.c
++++ b/scheduler/conf.c
+@@ -2975,7 +2975,9 @@
+ }
+ }
+
++#ifdef HAVE_SSL
+ _httpTLSSetOptions(options);
++#endif /* HAVE_SSL */
+ }
+ else if ((!_cups_strcasecmp(line, "Port") || !_cups_strcasecmp(line, "Listen")
+ #ifdef HAVE_SSL
diff --git a/net-print/cups/files/cups-2.0.1-rename-systemd-service-files.patch b/net-print/cups/files/cups-2.0.1-rename-systemd-service-files.patch
new file mode 100644
index 000000000000..c77997d7fec4
--- /dev/null
+++ b/net-print/cups/files/cups-2.0.1-rename-systemd-service-files.patch
@@ -0,0 +1,73 @@
+From 33e0d4c8e450fe69b195422c0880aaa96ca9478d Mon Sep 17 00:00:00 2001
+From: Matthias Maier <tamiko@kyomu.43-1.org>
+Date: Wed, 19 Nov 2014 18:00:06 +0100
+Subject: [PATCH] change systemd service files to gentoo naming scheme
+
+---
+ scheduler/Makefile | 10 +++++-----
+ scheduler/org.cups.cupsd.path.in | 2 +-
+ scheduler/org.cups.cupsd.service.in | 2 +-
+ 3 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/scheduler/Makefile b/scheduler/Makefile
+index 3e0884a..b354420 100644
+--- a/scheduler/Makefile
++++ b/scheduler/Makefile
+@@ -203,11 +203,11 @@ install-data:
+ if test "x$(SYSTEMD_DIR)" != x; then \
+ echo Installing systemd configuration files...; \
+ $(INSTALL_DIR) $(BUILDROOT)$(SYSTEMD_DIR); \
+- $(INSTALL_DATA) org.cups.cupsd.path $(BUILDROOT)$(SYSTEMD_DIR); \
+- $(INSTALL_DATA) org.cups.cupsd.service $(BUILDROOT)$(SYSTEMD_DIR); \
+- $(INSTALL_DATA) org.cups.cupsd.socket $(BUILDROOT)$(SYSTEMD_DIR); \
+- $(INSTALL_DATA) org.cups.cups-lpdAT.service $(BUILDROOT)$(SYSTEMD_DIR)/org.cups.cups-lpd@.service; \
+- $(INSTALL_DATA) org.cups.cups-lpd.socket $(BUILDROOT)$(SYSTEMD_DIR); \
++ $(INSTALL_DATA) org.cups.cupsd.path $(BUILDROOT)$(SYSTEMD_DIR)/cups.path; \
++ $(INSTALL_DATA) org.cups.cupsd.service $(BUILDROOT)$(SYSTEMD_DIR)/cups.service; \
++ $(INSTALL_DATA) org.cups.cupsd.socket $(BUILDROOT)$(SYSTEMD_DIR)/cups.socket; \
++ $(INSTALL_DATA) org.cups.cups-lpdAT.service $(BUILDROOT)$(SYSTEMD_DIR)/cups-lpd@.service; \
++ $(INSTALL_DATA) org.cups.cups-lpd.socket $(BUILDROOT)$(SYSTEMD_DIR)/cups-lpd.socket; \
+ elif test "x$(XINETD)" != x; then \
+ echo Installing xinetd configuration file for cups-lpd...; \
+ $(INSTALL_DIR) -m 755 $(BUILDROOT)$(XINETD); \
+diff --git a/scheduler/org.cups.cupsd.path.in b/scheduler/org.cups.cupsd.path.in
+index 1bccc6f..90c8576 100644
+--- a/scheduler/org.cups.cupsd.path.in
++++ b/scheduler/org.cups.cupsd.path.in
+@@ -2,7 +2,7 @@
+ Description=CUPS Scheduler
+
+ [Path]
+-PathExists=@CUPS_CACHEDIR@/org.cups.cupsd
++PathExists=@CUPS_CACHEDIR@/d*
+
+ [Install]
+ WantedBy=multi-user.target
+diff --git a/scheduler/org.cups.cupsd.service.in b/scheduler/org.cups.cupsd.service.in
+index 0a27c76..7a04248 100644
+--- a/scheduler/org.cups.cupsd.service.in
++++ b/scheduler/org.cups.cupsd.service.in
+@@ -7,5 +7,5 @@ ExecStart=@sbindir@/cupsd -l
+ Type=simple
+
+ [Install]
+-Also=org.cups.cupsd.socket org.cups.cupsd.path
++Also=cups.socket cups.path
+ WantedBy=printer.target
+diff --git a/scheduler/org.cups.cupsd.socket.in b/scheduler/org.cups.cupsd.socket.in
+--- a/scheduler/org.cups.cupsd.socket.in
++++ a/scheduler/org.cups.cupsd.socket.in
+@@ -3,6 +3,10 @@
+
+ [Socket]
+ ListenStream=@CUPS_DEFAULT_DOMAINSOCKET@
++ListenStream=[::1]:631
++ListenStream=127.0.0.1:631
++BindIPv6Only=ipv6-only
++ReusePort=true
+
+ [Install]
+ WantedBy=sockets.target
+--
+2.0.4
+
diff --git a/net-print/cups/files/cups-2.0.1-xinetd-installation-fix.patch b/net-print/cups/files/cups-2.0.1-xinetd-installation-fix.patch
new file mode 100644
index 000000000000..2e8419e7675a
--- /dev/null
+++ b/net-print/cups/files/cups-2.0.1-xinetd-installation-fix.patch
@@ -0,0 +1,9 @@
+--- a/scheduler/Makefile
++++ a/scheduler/Makefile
+@@ -211,4 +211,5 @@
+- elif test "x$(XINETD)" != x; then \
++ fi
++ if test "x$(XINETD)" != x; then \
+ echo Installing xinetd configuration file for cups-lpd...; \
+ $(INSTALL_DIR) -m 755 $(BUILDROOT)$(XINETD); \
+ $(INSTALL_DATA) cups-lpd.xinetd $(BUILDROOT)$(XINETD)/cups-lpd; \
diff --git a/net-print/cups/files/cups-2.0.2-poll-CPU-loop-STR-4605.patch b/net-print/cups/files/cups-2.0.2-poll-CPU-loop-STR-4605.patch
new file mode 100644
index 000000000000..86114ea650fb
--- /dev/null
+++ b/net-print/cups/files/cups-2.0.2-poll-CPU-loop-STR-4605.patch
@@ -0,0 +1,48 @@
+http://cups.org/str.php?L4605+P-1+S-2+C0+I0+E0+Q100%25
+https://bugs.gentoo.org/show_bug.cgi?id=549732
+
+commit bb00c43fccb5aa2dec8e03bd9783e1ee267266a7
+Author: msweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be>
+Date: Wed May 6 18:01:04 2015 +0000
+
+ The scheduler could get caught in a busy loop (STR #4605)
+
+
+
+ git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/trunk@12613 a1ca3aef-8c08-0410-bb20-df032aa958be
+
+diff --git a/scheduler/client.c b/scheduler/client.c
+index c5a9960..50464a5 100644
+--- a/scheduler/client.c
++++ b/scheduler/client.c
+@@ -585,6 +585,17 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
+ * connection and we need to shut it down...
+ */
+
++ if (!httpGetReady(con->http) && recv(httpGetFd(con->http), buf, 1, MSG_PEEK) < 1)
++ {
++ /*
++ * Connection closed...
++ */
++
++ cupsdLogClient(con, CUPSD_LOG_DEBUG, "Closing on EOF.");
++ cupsdCloseClient(con);
++ return;
++ }
++
+ cupsdLogClient(con, CUPSD_LOG_DEBUG, "Closing on unexpected HTTP read state %s.",
+ httpStateString(httpGetState(con->http)));
+ cupsdCloseClient(con);
+@@ -1979,12 +1990,6 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
+
+ if (httpGetState(con->http) == HTTP_STATE_POST_SEND)
+ {
+- /*
+- * Don't listen for activity until we decide to do something with this...
+- */
+-
+- cupsdAddSelect(httpGetFd(con->http), NULL, NULL, con);
+-
+ if (con->file >= 0)
+ {
+ fstat(con->file, &filestats);
diff --git a/net-print/cups/files/cups-2.0.2-rename-systemd-service-files.patch b/net-print/cups/files/cups-2.0.2-rename-systemd-service-files.patch
new file mode 100644
index 000000000000..16f677ba7a37
--- /dev/null
+++ b/net-print/cups/files/cups-2.0.2-rename-systemd-service-files.patch
@@ -0,0 +1,46 @@
+From 33e0d4c8e450fe69b195422c0880aaa96ca9478d Mon Sep 17 00:00:00 2001
+From: Matthias Maier <tamiko@kyomu.43-1.org>
+Date: Wed, 19 Nov 2014 18:00:06 +0100
+Subject: [PATCH] change systemd service files to gentoo naming scheme
+
+---
+ scheduler/Makefile | 10 +++++-----
+ scheduler/org.cups.cupsd.path.in | 2 +-
+ scheduler/org.cups.cupsd.service.in | 2 +-
+ 3 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/scheduler/Makefile b/scheduler/Makefile
+index 3e0884a..b354420 100644
+--- a/scheduler/Makefile
++++ b/scheduler/Makefile
+@@ -203,11 +203,11 @@ install-data:
+ if test "x$(SYSTEMD_DIR)" != x; then \
+ echo Installing systemd configuration files...; \
+ $(INSTALL_DIR) $(BUILDROOT)$(SYSTEMD_DIR); \
+- $(INSTALL_DATA) org.cups.cupsd.path $(BUILDROOT)$(SYSTEMD_DIR); \
+- $(INSTALL_DATA) org.cups.cupsd.service $(BUILDROOT)$(SYSTEMD_DIR); \
+- $(INSTALL_DATA) org.cups.cupsd.socket $(BUILDROOT)$(SYSTEMD_DIR); \
+- $(INSTALL_DATA) org.cups.cups-lpdAT.service $(BUILDROOT)$(SYSTEMD_DIR)/org.cups.cups-lpd@.service; \
+- $(INSTALL_DATA) org.cups.cups-lpd.socket $(BUILDROOT)$(SYSTEMD_DIR); \
++ $(INSTALL_DATA) org.cups.cupsd.path $(BUILDROOT)$(SYSTEMD_DIR)/cups.path; \
++ $(INSTALL_DATA) org.cups.cupsd.service $(BUILDROOT)$(SYSTEMD_DIR)/cups.service; \
++ $(INSTALL_DATA) org.cups.cupsd.socket $(BUILDROOT)$(SYSTEMD_DIR)/cups.socket; \
++ $(INSTALL_DATA) org.cups.cups-lpdAT.service $(BUILDROOT)$(SYSTEMD_DIR)/cups-lpd@.service; \
++ $(INSTALL_DATA) org.cups.cups-lpd.socket $(BUILDROOT)$(SYSTEMD_DIR)/cups-lpd.socket; \
+ elif test "x$(XINETD)" != x; then \
+ echo Installing xinetd configuration file for cups-lpd...; \
+ $(INSTALL_DIR) -m 755 $(BUILDROOT)$(XINETD); \
+diff --git a/scheduler/org.cups.cupsd.service.in b/scheduler/org.cups.cupsd.service.in
+index 0a27c76..7a04248 100644
+--- a/scheduler/org.cups.cupsd.service.in
++++ b/scheduler/org.cups.cupsd.service.in
+@@ -7,5 +7,5 @@ ExecStart=@sbindir@/cupsd -l
+ Type=simple
+
+ [Install]
+-Also=org.cups.cupsd.socket org.cups.cupsd.path
++Also=cups.socket cups.path
+ WantedBy=printer.target
+--
+2.0.4
+
diff --git a/net-print/cups/files/cups-2.0.2-systemd-socket.patch b/net-print/cups/files/cups-2.0.2-systemd-socket.patch
new file mode 100644
index 000000000000..6d8d60a07c1c
--- /dev/null
+++ b/net-print/cups/files/cups-2.0.2-systemd-socket.patch
@@ -0,0 +1,60 @@
+diff -up cups-2.0.2/cups/usersys.c.ustTJg cups-2.0.2/cups/usersys.c
+--- cups-2.0.2/cups/usersys.c.ustTJg 2015-02-10 13:40:24.294545077 +0100
++++ cups-2.0.2/cups/usersys.c 2015-02-10 13:46:56.763989233 +0100
+@@ -1017,7 +1017,7 @@ cups_finalize_client_conf(
+ struct stat sockinfo; /* Domain socket information */
+
+ if (!stat(CUPS_DEFAULT_DOMAINSOCKET, &sockinfo) &&
+- (sockinfo.st_mode & S_IRWXO) == S_IRWXO)
++ (sockinfo.st_mode & (S_IROTH | S_IWOTH)) == (S_IROTH | S_IWOTH))
+ cups_set_server_name(cc, CUPS_DEFAULT_DOMAINSOCKET);
+ else
+ #endif /* CUPS_DEFAULT_DOMAINSOCKET */
+diff -up cups-2.0.2/scheduler/main.c.ustTJg cups-2.0.2/scheduler/main.c
+--- cups-2.0.2/scheduler/main.c.ustTJg 2015-02-10 13:40:24.121547526 +0100
++++ cups-2.0.2/scheduler/main.c 2015-02-10 13:40:24.295545063 +0100
+@@ -658,8 +658,15 @@ main(int argc, /* I - Number of comm
+
+ #if defined(HAVE_LAUNCHD) || defined(HAVE_SYSTEMD)
+ if (OnDemand)
++ {
+ cupsdAddEvent(CUPSD_EVENT_SERVER_STARTED, NULL, NULL, "Scheduler started on demand.");
+- else
++# ifdef HAVE_SYSTEMD
++ sd_notifyf(0, "READY=1\n"
++ "STATUS=Scheduler is running...\n"
++ "MAINPID=%lu",
++ (unsigned long) getpid());
++# endif /* HAVE_SYSTEMD */
++ } else
+ #endif /* HAVE_LAUNCHD || HAVE_SYSTEMD */
+ if (fg)
+ cupsdAddEvent(CUPSD_EVENT_SERVER_STARTED, NULL, NULL, "Scheduler started in foreground.");
+diff -up cups-2.0.2/scheduler/org.cups.cupsd.path.in.ustTJg cups-2.0.2/scheduler/org.cups.cupsd.path.in
+--- cups-2.0.2/scheduler/org.cups.cupsd.path.in.ustTJg 2014-03-21 15:50:24.000000000 +0100
++++ cups-2.0.2/scheduler/org.cups.cupsd.path.in 2015-02-10 13:40:24.295545063 +0100
+@@ -2,7 +2,7 @@
+ Description=CUPS Scheduler
+
+ [Path]
+-PathExists=@CUPS_CACHEDIR@/org.cups.cupsd
++PathExistsGlob=@CUPS_REQUESTS@/d*
+
+ [Install]
+ WantedBy=multi-user.target
+diff -up cups-2.0.2/scheduler/org.cups.cupsd.service.in.ustTJg cups-2.0.2/scheduler/org.cups.cupsd.service.in
+--- cups-2.0.2/scheduler/org.cups.cupsd.service.in.ustTJg 2014-10-21 13:55:01.000000000 +0200
++++ cups-2.0.2/scheduler/org.cups.cupsd.service.in 2015-02-10 13:40:24.296545049 +0100
+@@ -1,10 +1,11 @@
+ [Unit]
+ Description=CUPS Scheduler
+ Documentation=man:cupsd(8)
++After=network.target
+
+ [Service]
+ ExecStart=@sbindir@/cupsd -l
+-Type=simple
++Type=notify
+
+ [Install]
+ Also=org.cups.cupsd.socket org.cups.cupsd.path
diff --git a/net-print/cups/files/cupsd.init.d-r1 b/net-print/cups/files/cupsd.init.d-r1
new file mode 100644
index 000000000000..2f2e9e2df192
--- /dev/null
+++ b/net-print/cups/files/cupsd.init.d-r1
@@ -0,0 +1,26 @@
+#!/sbin/runscript
+
+depend() {
+ use net
+ @neededservices@
+ before nfs
+ after logger
+}
+
+start() {
+ ebegin "Starting cupsd"
+
+ checkpath -q -d -m 0775 -o root:lp /var/cache/cups
+ checkpath -q -d -m 0775 -o root:lp /var/cache/cups/rss
+ checkpath -q -d -m 0755 -o root:lp /run/cups
+ checkpath -q -d -m 0511 -o lp:lpadmin /run/cups/certs
+
+ start-stop-daemon --start --quiet --exec /usr/sbin/cupsd
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping cupsd"
+ start-stop-daemon --stop --quiet --exec /usr/sbin/cupsd
+ eend $?
+}
diff --git a/net-print/cups/metadata.xml b/net-print/cups/metadata.xml
new file mode 100644
index 000000000000..bc19bfa0e433
--- /dev/null
+++ b/net-print/cups/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+ <use>
+ <flag name='lprng-compat'>
+ Do not install lp... binaries so cups and lprng can coexist.
+ </flag>
+ <flag name='python'>
+ Add support for the Python interpeter in the web server CGIs.
+ </flag>
+ <flag name='java'>
+ Add support for the Java interpeter in the web server CGIs.
+ </flag>
+ </use>
+</pkgmetadata>
diff --git a/net-print/dymo-cups-drivers/Manifest b/net-print/dymo-cups-drivers/Manifest
new file mode 100644
index 000000000000..b66b72a9b8c9
--- /dev/null
+++ b/net-print/dymo-cups-drivers/Manifest
@@ -0,0 +1,2 @@
+DIST dymo-cups-drivers-1.2.0.tar.gz 280453 SHA256 23cc45f9e128ec229c3fcdcbf4e6e7b16fc196be466c24dd4e39dcc3432df5af SHA512 b53f0f248d7da03c4b3c691d8f07a1f0818160df1b596bc7ea734f50fdb0973a12bd564abeb6be6595a828aa8e3b10384c9d85c1199e98ddb72bbb74b1ec067d WHIRLPOOL 0be85646208036dee05c13790accdbd0dbc42c4abecc8f5094eb9fbc2fdf5b8112aa2497fbfc84b04971be03d3902608b72202f66847c2c50dce745e7170952d
+DIST dymo-cups-drivers-1.4.0.tar.gz 420068 SHA256 c60797e7e986ca329f46e9a6ab1cb6382383952b15685ed69fd91f3c7ed64f71 SHA512 e8c375fa0bc87fa96b18db6213e308a1f32050004c0c8c7d516b548f9d369162431f5f56ebcbb1231be60f5d7a946dcca184c6ff4302952bf3744ba42521cd5c WHIRLPOOL 6f05c6717bb51a5dbfa8e0ed1581745787f0e2f26d24b36ab7c566160947f5baf3bff5db4e4e7c365ca1b82d526fcd3af3ec4607ec6804a6883fa6a70c146c4b
diff --git a/net-print/dymo-cups-drivers/dymo-cups-drivers-1.2.0.ebuild b/net-print/dymo-cups-drivers/dymo-cups-drivers-1.2.0.ebuild
new file mode 100644
index 000000000000..b68a02122c99
--- /dev/null
+++ b/net-print/dymo-cups-drivers/dymo-cups-drivers-1.2.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils autotools
+
+DESCRIPTION="Dymo SDK for LabelWriter/LabelManager printers"
+HOMEPAGE="http://sites.dymo.com/DeveloperProgram/Pages/LW_SDK_Linux.aspx"
+SRC_URI="http://download.dymo.com/Download%20Drivers/Linux/Download/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="test"
+
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="net-print/cups"
+DEPEND="${RDEPEND}
+ test? ( dev-util/cppunit )"
+
+# tests fail but needs to be investigated
+RESTRICT=test
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}+gcc-4.6.patch \
+ "${FILESDIR}"/${P}-cxxflags.patch
+ eautoreconf
+}
+
+DOCS=( AUTHORS README ChangeLog docs/SAMPLES )
+
+src_install() {
+ default
+
+ insinto /usr/share/doc/${PF}
+ doins docs/*.{txt,rtf,ps,png}
+}
diff --git a/net-print/dymo-cups-drivers/dymo-cups-drivers-1.4.0.ebuild b/net-print/dymo-cups-drivers/dymo-cups-drivers-1.4.0.ebuild
new file mode 100644
index 000000000000..6c5948e921c0
--- /dev/null
+++ b/net-print/dymo-cups-drivers/dymo-cups-drivers-1.4.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils autotools
+
+DESCRIPTION="Dymo SDK for LabelWriter/LabelManager printers"
+HOMEPAGE="http://sites.dymo.com/DeveloperProgram/Pages/LW_SDK_Linux.aspx"
+SRC_URI="http://download.dymo.com/Download%20Drivers/Linux/Download/${P}.tar.gz"
+
+S="${WORKDIR}/${P}.5"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="test"
+
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="net-print/cups"
+DEPEND="${RDEPEND}
+ test? ( dev-util/cppunit )"
+
+# tests fail but needs to be investigated
+RESTRICT=test
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.2.0-cxxflags.patch
+ eautoreconf
+}
+
+DOCS=( AUTHORS README ChangeLog docs/SAMPLES )
+
+src_install() {
+ default
+
+ insinto /usr/share/doc/${PF}
+ doins docs/*.{txt,rtf,ps,png}
+}
diff --git a/net-print/dymo-cups-drivers/files/dymo-cups-drivers-1.2.0+gcc-4.6.patch b/net-print/dymo-cups-drivers/files/dymo-cups-drivers-1.2.0+gcc-4.6.patch
new file mode 100644
index 000000000000..3f60290af837
--- /dev/null
+++ b/net-print/dymo-cups-drivers/files/dymo-cups-drivers-1.2.0+gcc-4.6.patch
@@ -0,0 +1,48 @@
+Index: dymo-cups-drivers-1.2.0/src/common/Halftoning.h
+===================================================================
+--- dymo-cups-drivers-1.2.0.orig/src/common/Halftoning.h
++++ dymo-cups-drivers-1.2.0/src/common/Halftoning.h
+@@ -22,6 +22,7 @@
+ #ifndef h4D098F6A_47C6_4e9d_BD74_2DC6034F8EEF
+ #define h4D098F6A_47C6_4e9d_BD74_2DC6034F8EEF
+
++#include <cstdlib>
+ #include "CommonTypedefs.h"
+
+ //namespace dymo
+Index: dymo-cups-drivers-1.2.0/src/lw/LabelWriterDriver.h
+===================================================================
+--- dymo-cups-drivers-1.2.0.orig/src/lw/LabelWriterDriver.h
++++ dymo-cups-drivers-1.2.0/src/lw/LabelWriterDriver.h
+@@ -21,6 +21,7 @@
+ #ifndef h53a93353_4968_443a_a5aa_1167526295fc
+ #define h53a93353_4968_443a_a5aa_1167526295fc
+
++#include <cstdlib>
+ #include "PrinterDriver.h"
+
+ namespace DymoPrinterDriver
+Index: dymo-cups-drivers-1.2.0/src/lw/tests/MOCK_LWLMPrintEnvironment.h
+===================================================================
+--- dymo-cups-drivers-1.2.0.orig/src/lw/tests/MOCK_LWLMPrintEnvironment.h
++++ dymo-cups-drivers-1.2.0/src/lw/tests/MOCK_LWLMPrintEnvironment.h
+@@ -21,6 +21,7 @@
+ #ifndef hc8e31bb3_01a5_4422_84b8_64c017e18521
+ #define hc8e31bb3_01a5_4422_84b8_64c017e18521
+
++#include <cstdlib>
+ #include "../PrinterDriver.h"
+ #include "MOCK_PrintEnvironment.h"
+
+Index: dymo-cups-drivers-1.2.0/src/lw/tests/MOCK_LWLMPrintEnvironment.cpp
+===================================================================
+--- dymo-cups-drivers-1.2.0.orig/src/lw/tests/MOCK_LWLMPrintEnvironment.cpp
++++ dymo-cups-drivers-1.2.0/src/lw/tests/MOCK_LWLMPrintEnvironment.cpp
+@@ -20,6 +20,7 @@
+
+ #include "MOCK_LWLMPrintEnvironment.h"
+ #include "../LabelWriterDriver.h"
++#include <cassert>
+
+ static const byte TOF_BIT = 0x02;
+ static const byte ROLL_CHANGED_BIT = 0x08;
diff --git a/net-print/dymo-cups-drivers/files/dymo-cups-drivers-1.2.0-cxxflags.patch b/net-print/dymo-cups-drivers/files/dymo-cups-drivers-1.2.0-cxxflags.patch
new file mode 100644
index 000000000000..03d233acb1e2
--- /dev/null
+++ b/net-print/dymo-cups-drivers/files/dymo-cups-drivers-1.2.0-cxxflags.patch
@@ -0,0 +1,15 @@
+Index: dymo-cups-drivers-1.2.0/configure.ac
+===================================================================
+--- dymo-cups-drivers-1.2.0.orig/configure.ac
++++ dymo-cups-drivers-1.2.0/configure.ac
+@@ -87,9 +87,7 @@ AM_CONDITIONAL([SAMPLES], [test x$sample
+ AC_SUBST(cups_cflags)
+
+ warning_flags="-Wall -Wno-unknown-pragmas"
+-debug_flags=""
+-optimization_flags="-O2"
+-CXXFLAGS="${optimization_flags} ${warning_flags} ${debug_flags} ${cups_cflags}"
++CXXFLAGS="${CXXFLAGS} ${warning_flags} ${debug_flags} ${cups_cflags}"
+
+
+ AC_CHECK_LIB(cups, cupsMarkOptions, , AC_ERROR([Can't find cups library]))
diff --git a/net-print/dymo-cups-drivers/metadata.xml b/net-print/dymo-cups-drivers/metadata.xml
new file mode 100644
index 000000000000..63ac5653603a
--- /dev/null
+++ b/net-print/dymo-cups-drivers/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>flameeyes@gentoo.org</email>
+ </maintainer>
+</pkgmetadata>
diff --git a/net-print/epson-inkjet-printer-escpr/Manifest b/net-print/epson-inkjet-printer-escpr/Manifest
new file mode 100644
index 000000000000..e4128a1bd4cb
--- /dev/null
+++ b/net-print/epson-inkjet-printer-escpr/Manifest
@@ -0,0 +1 @@
+DIST epson-inkjet-printer-escpr-1.4.4-1lsb3.2.tar.gz 2432872 SHA256 bec7c51d11d96b6448bd96b5e9ac622786e3fc5024e13cae2fc248f8858db2f6 SHA512 7a3f1f880dba9048773d051cfe54ea2ee929d82a85efb496d4df4b84b33ed2f48bb6020892615d5d22da6b5671501b82df55cea6e11b35fea392392f115a6330 WHIRLPOOL 856bcffc4fe45c6bb15c7ecbe1c41e315ee68bf2c3c93697ac4f314324e2b3a0a8796ba741c04e962f1ca9148dbf38d529649ffd5d7ddaaa757666ea066e32a0
diff --git a/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.4.4.ebuild b/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.4.4.ebuild
new file mode 100644
index 000000000000..3e76ec4b7413
--- /dev/null
+++ b/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.4.4.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib
+
+DESCRIPTION="Epson Inkjet Printer Driver (ESC/P-R)"
+HOMEPAGE="http://www.epson.com/"
+SRC_URI="https://download3.ebz.epson.net/dsc/f/03/00/03/29/49/36201e41f124a1f4f7b793533b1ade1202032276/epson-inkjet-printer-escpr-1.4.4-1lsb3.2.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+DEPEND="net-print/cups"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}/1.4.4-warnings.patch"
+}
+
+src_configure() {
+ econf --disable-shared
+}
+
+src_install() {
+ default
+ rm -r "${ED%/}/usr/$(get_libdir)" || die
+}
diff --git a/net-print/epson-inkjet-printer-escpr/files/1.4.4-warnings.patch b/net-print/epson-inkjet-printer-escpr/files/1.4.4-warnings.patch
new file mode 100644
index 000000000000..34ec1737d53b
--- /dev/null
+++ b/net-print/epson-inkjet-printer-escpr/files/1.4.4-warnings.patch
@@ -0,0 +1,43 @@
+--- a/lib/epson-escpage-mono.c
++++ b/lib/epson-escpage-mono.c
+@@ -885,7 +885,7 @@
+
+ EPS_LOG_FUNCIN;
+
+- memset(pBand, 0, sizeof(pBand));
++ memset(pBand, 0, sizeof(EPS_PAGE_BAND_M));
+
+ pBand->WidthInPixels = widthInPixels;
+ pBand->WidthInBytes = (pBand->WidthInPixels+7)/8;
+--- a/lib/epson-escpr-api.h
++++ b/lib/epson-escpr-api.h
+@@ -98,6 +98,9 @@
+ /*** -------------------------------------------------------------------------------*/
+ extern EPS_ERR_CODE epsMakeMainteCmd (EPS_INT32, EPS_UINT8*, EPS_UINT32* );
+
++extern EPS_ERR_CODE SetupJobAttrib (const EPS_JOB_ATTRIB* );
++extern EPS_ERR_CODE SendStartJob (EPS_BOOL );
++extern EPS_ERR_CODE PrintBand (const EPS_UINT8*, EPS_UINT32, EPS_UINT32* );
+ #ifdef __cplusplus
+ }
+ #endif
+--- a/src/filter.c
++++ b/src/filter.c
+@@ -38,6 +38,7 @@
+ #include "epson-escpr-api.h"
+ #include "epson-escpr-services.h"
+ #include "epson-escpr-mem.h"
++#include "epson-escpage.h"
+
+ #include "err.h"
+ #include "mem.h"
+--- a/src/mem.c
++++ b/src/mem.c
+@@ -23,6 +23,7 @@
+ #endif
+
+ #include <stdlib.h>
++#include "err.h"
+ #include "mem.h"
+
+ void *
diff --git a/net-print/epson-inkjet-printer-escpr/metadata.xml b/net-print/epson-inkjet-printer-escpr/metadata.xml
new file mode 100644
index 000000000000..09ddbff14dbf
--- /dev/null
+++ b/net-print/epson-inkjet-printer-escpr/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>floppym@gentoo.org</email>
+ <name>Mike Gilbert</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/net-print/fax4cups/Manifest b/net-print/fax4cups/Manifest
new file mode 100644
index 000000000000..a1fc28d7c3b0
--- /dev/null
+++ b/net-print/fax4cups/Manifest
@@ -0,0 +1 @@
+DIST fax4CUPS-1.29.tar.gz 15347 SHA256 4e9ff3ec04a356b24412db4226630cfef82b88142e1566c867f2832f3ee6cfb3 SHA512 b3548095c58bafa3e35a4ad26f7d9fc95538bd0a94f40b248e2ab10adf726a23ff2b6a274085278ef3e0379a4f67b43e31d604491cf1a45ca0fbc163fc4a774b WHIRLPOOL 5dfdff775963415170438f83e1a9df22beb59943d2104b711510c5d561896fa796f887b9a82d5f2f8973ac9f6e81643be451f28022c016c5b629e45bb8470685
diff --git a/net-print/fax4cups/fax4cups-1.29-r1.ebuild b/net-print/fax4cups/fax4cups-1.29-r1.ebuild
new file mode 100644
index 000000000000..fce5ac1e8d9c
--- /dev/null
+++ b/net-print/fax4cups/fax4cups-1.29-r1.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Fax backend for CUPS"
+HOMEPAGE="http://vigna.dsi.unimi.it/fax4CUPS/"
+SRC_URI="http://vigna.dsi.unimi.it/fax4CUPS/fax4CUPS-${PV}.tar.gz"
+LICENSE="GPL-2"
+
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+
+IUSE="+hylafax mgetty-fax efax"
+REQUIRED_USE="|| ( hylafax mgetty-fax efax )"
+
+DEPEND="net-print/cups"
+RDEPEND="${DEPEND}
+ || (
+ hylafax? ( net-misc/hylafaxplus )
+ efax? ( net-misc/efax )
+ mgetty-fax? ( net-dialup/mgetty )
+ )
+ app-admin/sudo
+"
+
+S=${WORKDIR}/fax4CUPS-${PV}
+
+src_install() {
+ doman fax4CUPS.1
+
+ exeinto $(cups-config --serverbin)/backend
+ insinto /usr/share/cups/model
+
+ for i in hylafax efax mgetty-fax; do
+ if use $i
+ then
+ # Backend
+ doexe $i
+ # PPD
+ doins $i.ppd
+ fi
+ done
+}
+
+pkg_postinst() {
+ elog "Please execute '/etc/init.d/cups restart'"
+ elog "to get the *.ppd files working properly"
+}
diff --git a/net-print/fax4cups/metadata.xml b/net-print/fax4cups/metadata.xml
new file mode 100644
index 000000000000..b5041330ba8b
--- /dev/null
+++ b/net-print/fax4cups/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>printing</herd>
+<use>
+ <flag name="hylafax">Install net-misc/hylafax backend</flag>
+ <flag name="efax">Install net-misc/efax backend</flag>
+ <flag name="mgetty-fax">Install net-dialup/mgetty backend</flag>
+</use>
+</pkgmetadata>
diff --git a/net-print/foo2zjs/files/foo2zjs-udev.patch b/net-print/foo2zjs/files/foo2zjs-udev.patch
new file mode 100644
index 000000000000..070383949a8d
--- /dev/null
+++ b/net-print/foo2zjs/files/foo2zjs-udev.patch
@@ -0,0 +1,12 @@
+diff -ruN foo2zjs/Makefile foo2zjs.orig/Makefile
+--- foo2zjs/Makefile 2012-01-18 21:53:45.834944820 +0100
++++ foo2zjs.orig/Makefile 2012-01-18 21:51:18.872936603 +0100
+@@ -933,7 +933,7 @@
+ echo " *** OR (generic linux)"; \
+ echo " *** # rm -f $(LIBUDEVDIR)/*-printers.rules"; \
+ echo " ***"; \
+- exit 1; \
++ # exit 1; \
+ fi
+ # ... OK!
+ #
diff --git a/net-print/foo2zjs/files/foo2zjs-usbbackend.patch b/net-print/foo2zjs/files/foo2zjs-usbbackend.patch
new file mode 100644
index 000000000000..b73c79be4e56
--- /dev/null
+++ b/net-print/foo2zjs/files/foo2zjs-usbbackend.patch
@@ -0,0 +1,12 @@
+diff -ruN foo2zjs.orig/hplj1000 foo2zjs/hplj1000
+--- foo2zjs.orig/hplj1000 2013-01-11 17:20:04.000000000 +0100
++++ foo2zjs/hplj1000 2013-03-24 20:49:16.150065578 +0100
+@@ -42,7 +42,7 @@
+ # Path to the USB CUPS backend. We use this backend to upload the firmware
+ # into the printer when we are on a CUPS/libusb-based system.
+ #
+-USB_BACKEND=/usr/lib/cups/backend/usb
++USB_BACKEND=/usr/libexec/cups/backend/usb
+
+ #
+ # Directory to find downloadable HP firmware files sihpMMMM.dl
diff --git a/net-print/foo2zjs/foo2zjs-99999999.ebuild b/net-print/foo2zjs/foo2zjs-99999999.ebuild
new file mode 100644
index 000000000000..11eaf26946fe
--- /dev/null
+++ b/net-print/foo2zjs/foo2zjs-99999999.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils
+
+DESCRIPTION="Support for printing to ZjStream-based printers"
+HOMEPAGE="http://foo2zjs.rkkda.com/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS=""
+IUSE="test"
+
+RESTRICT="bindist"
+
+RDEPEND="net-print/cups
+ net-print/foomatic-db-engine
+ || ( >=net-print/cups-filters-1.0.43-r1[foomatic] net-print/foomatic-filters )
+ virtual/udev"
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ app-editors/vim
+ net-misc/wget
+ sys-apps/ed
+ sys-devel/bc
+ test? ( sys-process/time )"
+
+S="${WORKDIR}/${PN}"
+
+src_unpack() {
+ einfo "Fetching ${PN} tarball"
+ wget "http://foo2zjs.rkkda.com/${PN}.tar.gz"
+ tar zxf "${WORKDIR}/${PN}.tar.gz"
+
+ epatch "${FILESDIR}/${PN}-udev.patch"
+ epatch "${FILESDIR}/${PN}-usbbackend.patch"
+
+ cd "${S}"
+
+ einfo "Fetching additional files (firmware, etc)"
+ emake getweb
+
+ # Display wget output, downloading takes some time.
+ sed -e '/^WGETOPTS/s/-q//g' -i getweb
+
+ ./getweb all
+}
+
+src_prepare() {
+ # Prevent an access violation.
+ sed -e "s~/etc~${D}/etc~g" -i Makefile
+ sed -e "s~/etc~${D}/etc~g" -i hplj1000
+
+ # Prevent an access violation, do not create symlinks on live file system
+ # during installation.
+ sed -e 's/ install-filter / /g' -i Makefile
+
+ # Prevent an access violation, do not remove files from live filesystem
+ # during make install
+ sed -e '/rm .*LIBUDEVDIR)\//d' -i Makefile
+ sed -e '/rm .*lib\/udev\/rules.d\//d' -i hplj1000
+}
+
+src_compile() {
+ MAKEOPTS=-j1 default
+}
+
+src_install() {
+ # ppd files are installed automagically. We have to create a directory
+ # for them.
+ mkdir -p "${D}/usr/share/ppd"
+
+ emake DESTDIR="${D}" -j1 install install-hotplug
+}
diff --git a/net-print/foo2zjs/metadata.xml b/net-print/foo2zjs/metadata.xml
new file mode 100644
index 000000000000..447cad30a8fc
--- /dev/null
+++ b/net-print/foo2zjs/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+</pkgmetadata>
diff --git a/net-print/foomatic-db-engine/Manifest b/net-print/foomatic-db-engine/Manifest
new file mode 100644
index 000000000000..773187c9feab
--- /dev/null
+++ b/net-print/foomatic-db-engine/Manifest
@@ -0,0 +1,2 @@
+DIST foomatic-db-engine-4.0.11.tar.gz 360379 SHA256 aa90df28f6dd94d3b590a789009c6a1792696c5cebb1e0dd6037d7dcaa09ffdf SHA512 790d08a7ba69a397988695248de5f1dff2d8461b7da415b73daea133426cc39ea69b59d59a5d1651007388c99276e878dbc3388b54219338090a1a95e6a5ae0a WHIRLPOOL 9cf310d28a1dd13c20c765fcd112127dd20670d7df2db1f3dcab45b4f05d59d4ea255c19dba2528edc805fbb1c0b13afc3f4abe1f7d872b6df9e60f17366e9f9
+DIST foomatic-db-engine-4.0.12.tar.gz 360499 SHA256 66143b76ed5b325b7025e261ad917b543de534c6d0a6e495d5489a20cace7c21 SHA512 b7e99ace6a632e9b0213183bd2c6c2d11ca072ea0414e8ca569082b7ec183dd81c80594ad63fdee82d761ae36d4fce9d3c881569a95a6085ec326ef7fd21154f WHIRLPOOL 69fc54c9a843da27470595d6518c08bd392a63704156075fb80738d00f397f6891fda2504820e3728f4714bf6cd9916be547a8d26bef6c4dc2c9bb153ad8ab43
diff --git a/net-print/foomatic-db-engine/files/4.0.7-perl-module.patch b/net-print/foomatic-db-engine/files/4.0.7-perl-module.patch
new file mode 100644
index 000000000000..dbb53feb2a87
--- /dev/null
+++ b/net-print/foomatic-db-engine/files/4.0.7-perl-module.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile.in b/Makefile.in
+index 3014185..81e090d 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -42,7 +42,7 @@ LOCAL_LIBDIR=@LOCAL_LIBDIR@
+ FOOMATIC_RIP=@FOOMATIC_RIP@
+
+ # foomatic-rip path for a "make inplace" installation
+-LOCAL_FOOMATIC_RIP=@LOCAL_FOOMATIC_RIP@
++LOCAL_FOOMATIC_RIP=@FOOMATIC_RIP@
+
+ # Locations for installing the components of this package
+ BINDIR=$(bindir)
diff --git a/net-print/foomatic-db-engine/files/4.0.7-respect-ldflag.patch b/net-print/foomatic-db-engine/files/4.0.7-respect-ldflag.patch
new file mode 100644
index 000000000000..9e6071276a4e
--- /dev/null
+++ b/net-print/foomatic-db-engine/files/4.0.7-respect-ldflag.patch
@@ -0,0 +1,15 @@
+--- foomatic-db-engine-4.0.2/Makefile.in.orig 2009-07-23 11:45:28.487999828 +0200
++++ foomatic-db-engine-4.0.2/Makefile.in 2009-07-23 11:45:53.939525006 +0200
+@@ -231,10 +231,10 @@
+ ( cd lib && $(PERL) Makefile.PL verbose INSTALLDIRS=$(PERL_INSTALLDIRS) )
+
+ foomatic-combo-xml: foomatic-combo-xml.c
+- $(CC) $(CFLAGS) -o foomatic-combo-xml foomatic-combo-xml.c
++ $(CC) $(CFLAGS) $(LDFLAGS) -o foomatic-combo-xml foomatic-combo-xml.c
+
+ foomatic-perl-data: foomatic-perl-data.c
+- $(CC) $(CFLAGS) $(XML_CFLAGS) -o foomatic-perl-data foomatic-perl-data.c $(XML_LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o foomatic-perl-data foomatic-perl-data.c $(XML_CFLAGS) $(XML_LIBS)
+
+ man: lib/Foomatic/Defaults.pm
+ chmod a+rx ./makeMan
diff --git a/net-print/foomatic-db-engine/foomatic-db-engine-4.0.11.ebuild b/net-print/foomatic-db-engine/foomatic-db-engine-4.0.11.ebuild
new file mode 100644
index 000000000000..228dea6aceeb
--- /dev/null
+++ b/net-print/foomatic-db-engine/foomatic-db-engine-4.0.11.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+GENTOO_DEPEND_ON_PERL_SUBSLOT=yes
+inherit eutils perl-app versionator
+
+DESCRIPTION="Generates ppds out of xml foomatic printer description files"
+HOMEPAGE="http://www.linuxprinting.org/foomatic.html"
+SRC_URI="http://www.openprinting.org/download/foomatic/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd"
+IUSE=""
+
+DEPEND="net-print/cups"
+RDEPEND="
+ dev-libs/libxml2
+ || ( >=net-print/cups-filters-1.0.43-r1[foomatic] net-print/foomatic-filters )
+"
+PDEPEND="net-print/foomatic-db"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/4.0.7-perl-module.patch \
+ "${FILESDIR}"/4.0.7-respect-ldflag.patch
+ sed -i -e "s:@LIB_CUPS@:$(cups-config --serverbin):" Makefile.in || die
+}
+
+src_configure() {
+ default
+ emake defaults
+
+ cd lib
+ perl-app_src_configure
+}
+
+src_compile() {
+ emake
+
+ cd lib
+ perl-app_src_compile
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ dodoc ChangeLog README TODO USAGE
+
+ cd lib
+ perl-module_src_install
+}
+
+src_test() {
+ cd lib
+ perl-module_src_test
+}
diff --git a/net-print/foomatic-db-engine/foomatic-db-engine-4.0.12.ebuild b/net-print/foomatic-db-engine/foomatic-db-engine-4.0.12.ebuild
new file mode 100644
index 000000000000..fb5aa965ad32
--- /dev/null
+++ b/net-print/foomatic-db-engine/foomatic-db-engine-4.0.12.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+GENTOO_DEPEND_ON_PERL_SUBSLOT=yes
+inherit eutils perl-app versionator
+
+DESCRIPTION="Generates ppds out of xml foomatic printer description files"
+HOMEPAGE="http://www.linuxprinting.org/foomatic.html"
+SRC_URI="http://www.openprinting.org/download/foomatic/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
+IUSE=""
+
+DEPEND="net-print/cups"
+RDEPEND="
+ dev-libs/libxml2
+ || ( >=net-print/cups-filters-1.0.43-r1[foomatic] net-print/foomatic-filters )
+"
+PDEPEND="net-print/foomatic-db"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/4.0.7-perl-module.patch \
+ "${FILESDIR}"/4.0.7-respect-ldflag.patch
+ sed -i -e "s:@LIB_CUPS@:$(cups-config --serverbin):" Makefile.in || die
+}
+
+src_configure() {
+ default
+ emake defaults
+
+ cd lib
+ perl-app_src_configure
+}
+
+src_compile() {
+ emake
+
+ cd lib
+ perl-app_src_compile
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ dodoc ChangeLog README TODO USAGE
+
+ cd lib
+ perl-module_src_install
+}
+
+src_test() {
+ cd lib
+ perl-module_src_test
+}
diff --git a/net-print/foomatic-db-engine/metadata.xml b/net-print/foomatic-db-engine/metadata.xml
new file mode 100644
index 000000000000..e450ba260ec9
--- /dev/null
+++ b/net-print/foomatic-db-engine/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+</pkgmetadata>
diff --git a/net-print/foomatic-db-ppds/Manifest b/net-print/foomatic-db-ppds/Manifest
new file mode 100644
index 000000000000..84c59fd637ac
--- /dev/null
+++ b/net-print/foomatic-db-ppds/Manifest
@@ -0,0 +1,2 @@
+DIST foomatic-db-4.0-20140105.tar.gz 38845034 SHA256 8c94ca9316f0e7ebc9cd69818349d49058411120b5f5ab45d4246a30bf832292 SHA512 4d06d63fe79bcfb912875b8209d658e018f4486821e7bf9433cb181d68df58602a58e755202d8ce53e0a9b9d8b0f1b31a7847c4d1346164e88105b06a4003ee4 WHIRLPOOL 77ac1ee1b13857aa07e82da540cd5d11973d9a75437c12b5fba7c115ea27cfea3fe1c3500c3fc09a74333255e824aa9e2199653e5f873bebe9c1c7c7b85800bc
+DIST foomatic-db-4.0-20141025.tar.gz 39889820 SHA256 6167c45fe3c59f45a41fe9e66514be335b0cfa554bded3155937debfa0d7b6b2 SHA512 bd430f41ae3bd76c4d9f521ee0ba03366aff88ced499dcdbd994f594129343739eda54c345525338ffc254bca1cb62863415504ccd29e3871acab7272759d40e WHIRLPOOL 5a8cf6d99941c61e92e5fe209ee1bce4c4ec7e211b05ef23ad42e13e9482fa621519e1562272d0e5337806ce79fa9b5206a658ed14e5ac429e8caaab5cfbb429
diff --git a/net-print/foomatic-db-ppds/files/Makefile.in-4.0.20120117.patch b/net-print/foomatic-db-ppds/files/Makefile.in-4.0.20120117.patch
new file mode 100644
index 000000000000..67928e3f46f9
--- /dev/null
+++ b/net-print/foomatic-db-ppds/files/Makefile.in-4.0.20120117.patch
@@ -0,0 +1,24 @@
+diff -urN foomatic-db-20070508.orig/Makefile.in foomatic-db-20070508/Makefile.in
+--- foomatic-db-20070508.orig/Makefile.in 2007-05-08 09:22:03.000000000 +0200
++++ foomatic-db-20070508/Makefile.in 2007-05-08 13:08:48.000000000 +0200
+@@ -66,13 +66,13 @@
+ install -d $(DESTDIR)$(LIBDIR)/db/source/opt
+ install -d $(DESTDIR)$(LIBDIR)/db/source/PPD
+ install -d $(DESTDIR)$(LIBDIR)/xmlschema
+- cp db/oldprinterids $(DESTDIR)$(LIBDIR)/db
+- cp db/source/printer/*.xml $(DESTDIR)$(LIBDIR)/db/source/printer
+- ( cd db/source/driver/; \
+- for d in $(DRIVERXMLS); do \
+- cp $$d $(DESTDIR)$(LIBDIR)/db/source/driver; \
+- done )
+- cp db/source/opt/*.xml $(DESTDIR)$(LIBDIR)/db/source/opt
++# cp db/oldprinterids $(DESTDIR)$(LIBDIR)/db
++# cp db/source/printer/*.xml $(DESTDIR)$(LIBDIR)/db/source/printer
++# ( cd db/source/driver/; \
++# for d in $(DRIVERXMLS); do \
++# cp $$d $(DESTDIR)$(LIBDIR)/db/source/driver; \
++# done )
++# cp db/source/opt/*.xml $(DESTDIR)$(LIBDIR)/db/source/opt
+ ( cd db/source && tar cf - --exclude=.svn PPD ) | \
+ ( cd $(DESTDIR)$(LIBDIR)/db/source && tar xf -)
+ if test $(GZIP) != GZIP_NOT_FOUND -a $(GZIP_PPDS) != no ; then \
diff --git a/net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20140105.ebuild b/net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20140105.ebuild
new file mode 100644
index 000000000000..1f199ea52689
--- /dev/null
+++ b/net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20140105.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils versionator
+
+MY_P=${PN/-ppds}-$(replace_version_separator 2 '-')
+
+DESCRIPTION="linuxprinting.org PPD files for postscript printers"
+HOMEPAGE="http://www.linuxprinting.org/foomatic.html"
+#SRC_URI="http://linuxprinting.org/download/foomatic/${MY_P}.tar.gz"
+SRC_URI="http://dev.gentoo.org/~dilfridge/distfiles/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~sparc-fbsd ~x86-fbsd"
+IUSE=""
+
+S="${WORKDIR}/${PN/-ppds}-$(get_version_component_range 3 ${PV})"
+
+src_prepare() {
+ epatch "${FILESDIR}/Makefile.in-4.0.20120117.patch"
+}
+
+src_install() {
+ default
+ rm -v "${ED}"/usr/share/foomatic/xmlschema/{driver,option,printer,types}.xsd || die "Cannot remove duplicates"
+}
diff --git a/net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20141025.ebuild b/net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20141025.ebuild
new file mode 100644
index 000000000000..956787978afc
--- /dev/null
+++ b/net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20141025.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils versionator
+
+MY_P=${PN/-ppds}-$(replace_version_separator 2 '-')
+
+DESCRIPTION="linuxprinting.org PPD files for postscript printers"
+HOMEPAGE="http://www.linuxprinting.org/foomatic.html"
+SRC_URI="http://linuxprinting.org/download/foomatic/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd"
+IUSE=""
+
+S="${WORKDIR}/${PN/-ppds}-$(get_version_component_range 3 ${PV})"
+
+src_prepare() {
+ epatch "${FILESDIR}/Makefile.in-4.0.20120117.patch"
+}
+
+src_install() {
+ default
+ rm -v "${ED}"/usr/share/foomatic/xmlschema/{driver,option,printer,types}.xsd || die "Cannot remove duplicates"
+}
diff --git a/net-print/foomatic-db-ppds/metadata.xml b/net-print/foomatic-db-ppds/metadata.xml
new file mode 100644
index 000000000000..e450ba260ec9
--- /dev/null
+++ b/net-print/foomatic-db-ppds/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+</pkgmetadata>
diff --git a/net-print/foomatic-db/Manifest b/net-print/foomatic-db/Manifest
new file mode 100644
index 000000000000..84c59fd637ac
--- /dev/null
+++ b/net-print/foomatic-db/Manifest
@@ -0,0 +1,2 @@
+DIST foomatic-db-4.0-20140105.tar.gz 38845034 SHA256 8c94ca9316f0e7ebc9cd69818349d49058411120b5f5ab45d4246a30bf832292 SHA512 4d06d63fe79bcfb912875b8209d658e018f4486821e7bf9433cb181d68df58602a58e755202d8ce53e0a9b9d8b0f1b31a7847c4d1346164e88105b06a4003ee4 WHIRLPOOL 77ac1ee1b13857aa07e82da540cd5d11973d9a75437c12b5fba7c115ea27cfea3fe1c3500c3fc09a74333255e824aa9e2199653e5f873bebe9c1c7c7b85800bc
+DIST foomatic-db-4.0-20141025.tar.gz 39889820 SHA256 6167c45fe3c59f45a41fe9e66514be335b0cfa554bded3155937debfa0d7b6b2 SHA512 bd430f41ae3bd76c4d9f521ee0ba03366aff88ced499dcdbd994f594129343739eda54c345525338ffc254bca1cb62863415504ccd29e3871acab7272759d40e WHIRLPOOL 5a8cf6d99941c61e92e5fe209ee1bce4c4ec7e211b05ef23ad42e13e9482fa621519e1562272d0e5337806ce79fa9b5206a658ed14e5ac429e8caaab5cfbb429
diff --git a/net-print/foomatic-db/foomatic-db-4.0.20140105.ebuild b/net-print/foomatic-db/foomatic-db-4.0.20140105.ebuild
new file mode 100644
index 000000000000..c85664ebc599
--- /dev/null
+++ b/net-print/foomatic-db/foomatic-db-4.0.20140105.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit versionator
+
+DESCRIPTION="Printer information files for foomatic-db-engine to generate ppds"
+HOMEPAGE="http://www.linuxprinting.org/foomatic.html"
+#SRC_URI="http://www.openprinting.org/download/foomatic/${PN}-$(replace_version_separator 2 -).tar.gz"
+SRC_URI="http://dev.gentoo.org/~dilfridge/distfiles/${PN}-$(replace_version_separator 2 -).tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd"
+IUSE=""
+
+DEPEND=""
+RDEPEND="
+ net-print/foomatic-db-engine
+ !net-print/foo2zjs[hp2600n]"
+
+S="${WORKDIR}/${PN}-$(get_version_component_range 3 ${PV})"
+
+src_prepare() {
+ # ppd files do not belong to this package
+ rm -r db/source/PPD || die
+}
+
+src_configure() {
+ econf \
+ --disable-gzip-ppds \
+ --disable-ppds-to-cups
+}
+
+src_install() {
+ default
+ rmdir "${ED}"/usr/share/foomatic/db/source/PPD || die
+ # Avoid collision with foo2zjs, bug 185486
+ rm "${ED}"/usr/share/foomatic/db/source/{driver/foo2{hp,lava,xqx,zjs}.xml,printer/{Generic-ZjStream_Printer,HP-{Color_LaserJet_{1500,1600,2600n},LaserJet_{10{00,05,18,20,22},M1005_MFP}},Minolta-{Color_PageWorks_Pro_L,magicolor_2{20,30,43}0_DL},Samsung-CLP-{3,6}00}.xml} || die
+}
diff --git a/net-print/foomatic-db/foomatic-db-4.0.20141025.ebuild b/net-print/foomatic-db/foomatic-db-4.0.20141025.ebuild
new file mode 100644
index 000000000000..b88d2cd7aae4
--- /dev/null
+++ b/net-print/foomatic-db/foomatic-db-4.0.20141025.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit versionator
+
+DESCRIPTION="Printer information files for foomatic-db-engine to generate ppds"
+HOMEPAGE="http://www.linuxprinting.org/foomatic.html"
+SRC_URI="http://www.openprinting.org/download/foomatic/${PN}-$(replace_version_separator 2 -).tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
+IUSE=""
+
+DEPEND=""
+RDEPEND="
+ net-print/foomatic-db-engine
+ !net-print/foo2zjs[hp2600n]"
+
+S="${WORKDIR}/${PN}-$(get_version_component_range 3 ${PV})"
+
+src_prepare() {
+ # ppd files do not belong to this package
+ rm -r db/source/PPD || die
+}
+
+src_configure() {
+ econf \
+ --disable-gzip-ppds \
+ --disable-ppds-to-cups
+}
+
+src_install() {
+ default
+ rmdir "${ED}"/usr/share/foomatic/db/source/PPD || die
+ # Avoid collision with foo2zjs, bug 185486
+ rm "${ED}"/usr/share/foomatic/db/source/{driver/foo2{hp,lava,xqx,zjs}.xml,printer/{Generic-ZjStream_Printer,HP-{Color_LaserJet_{1500,1600,2600n},LaserJet_{10{00,05,18,20,22},M1005_MFP}},Minolta-{Color_PageWorks_Pro_L,magicolor_2{20,30,43}0_DL},Samsung-CLP-{3,6}00}.xml} || die
+}
diff --git a/net-print/foomatic-db/metadata.xml b/net-print/foomatic-db/metadata.xml
new file mode 100644
index 000000000000..e450ba260ec9
--- /dev/null
+++ b/net-print/foomatic-db/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+</pkgmetadata>
diff --git a/net-print/foomatic-filters/Manifest b/net-print/foomatic-filters/Manifest
new file mode 100644
index 000000000000..992f0dc2c074
--- /dev/null
+++ b/net-print/foomatic-filters/Manifest
@@ -0,0 +1 @@
+DIST foomatic-filters-4.0.17.tar.gz 266276 SHA256 a2e2e53e502571e88eeb9010c45a0d54671f15707ee104f5c9c22b59ea7a33e3 SHA512 f07d2ac64a28e9353418deb9dd2009f5ef7676ab268af211edfcd012c231c9081516dae450f2b7910b687f75f7e53c8198fda2508f3fd527120940b4905292dd WHIRLPOOL c9ea6456df64aa92f0b1dbbf74b03406d9f5487b1b0df11c3c354f813db32a3953371ffdd0fcfab5369ca46123280a5a68bab034c90c0d0c612001ff99242e40
diff --git a/net-print/foomatic-filters/files/foomatic-filters-4.0.9-multilib.patch b/net-print/foomatic-filters/files/foomatic-filters-4.0.9-multilib.patch
new file mode 100644
index 000000000000..0659e0818055
--- /dev/null
+++ b/net-print/foomatic-filters/files/foomatic-filters-4.0.9-multilib.patch
@@ -0,0 +1,41 @@
+diff --git a/configure.ac b/configure.ac
+index acd2f0c..9b333b9 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -81,24 +81,24 @@ if test -n "$CUPS_SERVERBIN"; then
+ AC_SUBST(CUPS_FILTERS)
+ AC_SUBST(CUPS_BACKENDS)
+ else
+- # Check for /usr/lib/cups
+- FM_PATH_DIR(CUPS,cups,/usr/lib/cups,$SERVERBIB$LIBSEARCHPATH)
++ # Check for ${libdir}/cups
++ FM_PATH_DIR(CUPS,cups,${libdir}/cups,$SERVERBIB$LIBSEARCHPATH)
+
+- # Check for /usr/lib/cups/filter
+- FM_PATH_DIR(CUPS_FILTERS,cups/filter,/usr/lib/cups/filter,$FILTERS$LIBSEARCHPATH)
++ # Check for ${libdir}/cups/filter
++ FM_PATH_DIR(CUPS_FILTERS,cups/filter,${libdir}/cups/filter,$FILTERS$LIBSEARCHPATH)
+
+- # Check for /usr/lib/cups/backend
+- FM_PATH_DIR(CUPS_BACKENDS,cups/backend,/usr/lib/cups/backend,$BACKENDS$LIBSEARCHPATH)
++ # Check for ${libdir}/cups/backend
++ FM_PATH_DIR(CUPS_BACKENDS,cups/backend,${libdir}/cups/backend,$BACKENDS$LIBSEARCHPATH)
+ fi
+
+-# Check for /usr/lib/ppr
+-FM_PATH_DIR(PPR,ppr,/usr/lib/ppr,$LIBSEARCHPATH)
++# Check for ${libdir}/ppr
++FM_PATH_DIR(PPR,ppr,${libdir}/ppr,$LIBSEARCHPATH)
+
+-# Check for /usr/lib/ppr/interfaces
+-FM_PATH_DIR(PPR_INTERFACES,ppr/interfaces,/usr/lib/ppr/interfaces,$LIBSEARCHPATH)
++# Check for ${libdir}/ppr/interfaces
++FM_PATH_DIR(PPR_INTERFACES,ppr/interfaces,${libdir}/ppr/interfaces,$LIBSEARCHPATH)
+
+-# Check for /usr/lib/ppr/lib
+-FM_PATH_DIR(PPR_LIB,ppr/lib,/usr/lib/ppr/lib,$LIBSEARCHPATH)
++# Check for ${libdir}/ppr/lib
++FM_PATH_DIR(PPR_LIB,ppr/lib,${libdir}/ppr/lib,$LIBSEARCHPATH)
+
+ AC_CHECK_HEADERS([ghostscript/ierrors.h ghostscript/iapi.h])
+ AC_CHECK_LIB(gs, gsapi_new_instance)
diff --git a/net-print/foomatic-filters/foomatic-filters-4.0.17-r1.ebuild b/net-print/foomatic-filters/foomatic-filters-4.0.17-r1.ebuild
new file mode 100644
index 000000000000..63bac1fb04cd
--- /dev/null
+++ b/net-print/foomatic-filters/foomatic-filters-4.0.17-r1.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools eutils versionator
+
+DESCRIPTION="Foomatic wrapper scripts"
+HOMEPAGE="http://www.linuxprinting.org/foomatic.html"
+SRC_URI="http://www.openprinting.org/download/foomatic/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+IUSE="cups dbus"
+
+RDEPEND="
+ dev-lang/perl
+ app-text/ghostscript-gpl
+ !=net-print/cups-filters-1.0.43
+ !>=net-print/cups-filters-1.0.43-r1[foomatic]
+ cups? (
+ >=net-print/cups-1.6.0 net-print/cups-filters
+ )
+ !cups? (
+ || (
+ app-text/enscript
+ app-text/a2ps
+ app-text/mpage
+ )
+ )
+ dbus? ( sys-apps/dbus )"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ if use cups; then
+ CUPS_SERVERBIN="$(cups-config --serverbin)"
+ else
+ CUPS_SERVERBIN=""
+ fi
+
+ # Search for libs in ${libdir}, not just /usr/lib
+ epatch "${FILESDIR}"/${PN}-4.0.9-multilib.patch
+ eautoreconf
+
+ export CUPS_BACKENDS=${CUPS_SERVERBIN}/backend \
+ CUPS_FILTERS=${CUPS_SERVERBIN}/filter CUPS=${CUPS_SERVERBIN}/
+}
+
+src_configure() {
+ econf $(use_enable dbus)
+}
+
+src_install() {
+ default
+
+ dosym /usr/bin/foomatic-rip /usr/bin/lpdomatic
+
+ if use cups; then
+ dosym /usr/bin/foomatic-rip "${CUPS_SERVERBIN}/filter/cupsomatic"
+ else
+ rm -r "${ED}"/${CUPS_SERVERBIN}/filter
+ rm -r "${ED}"/${CUPS_SERVERBIN}/backend
+ fi
+}
diff --git a/net-print/foomatic-filters/metadata.xml b/net-print/foomatic-filters/metadata.xml
new file mode 100644
index 000000000000..e450ba260ec9
--- /dev/null
+++ b/net-print/foomatic-filters/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+</pkgmetadata>
diff --git a/net-print/foomatic-gui/Manifest b/net-print/foomatic-gui/Manifest
new file mode 100644
index 000000000000..9e53a6f6c294
--- /dev/null
+++ b/net-print/foomatic-gui/Manifest
@@ -0,0 +1 @@
+DIST foomatic-gui_0.7.9.5.tar.gz 122249 SHA256 e0ae4afa43a39bbcc74510ad22796a95eefd898f780fb392cf39afd3318931ff SHA512 d118caa3f905d8b2a20f55d7b51c41501f83455c5ef18b1e18c99414cefaa5d32a051f33cad8a446740566e7f4928c7ff4ccca3cfee9f20b39ca43290d05987e WHIRLPOOL 0988a5635297ecff94410bea2e71fe2d3b603ed5b6bb7a4cf2c62d9e20e33d84d6723e66c8651a3ce9ccf603956e433e3e03a918ff9ddcf9b1a2a465d45f614f
diff --git a/net-print/foomatic-gui/foomatic-gui-0.7.9.5-r1.ebuild b/net-print/foomatic-gui/foomatic-gui-0.7.9.5-r1.ebuild
new file mode 100644
index 000000000000..526c912786b7
--- /dev/null
+++ b/net-print/foomatic-gui/foomatic-gui-0.7.9.5-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+DISTUTILS_SINGLE_IMPL=1
+PYTHON_REQ_USE="xml"
+
+inherit distutils-r1
+
+DESCRIPTION="GNOME interface for configuring the Foomatic printer filter system"
+HOMEPAGE="http://freshmeat.net/projects/foomatic-gui/"
+SRC_URI="mirror://debian/pool/main/f/${PN}/${PN}_${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~sparc ~x86"
+IUSE=""
+
+RDEPEND="
+ dev-python/libgnome-python[${PYTHON_USEDEP}]
+ dev-python/pygobject:2[${PYTHON_USEDEP}]
+ dev-python/libbonobo-python[${PYTHON_USEDEP}]
+ dev-python/gnome-vfs-python[${PYTHON_USEDEP}]
+ dev-python/ipy[${PYTHON_USEDEP}]
+ dev-python/pygtk:2[${PYTHON_USEDEP}]
+ dev-python/pywebkitgtk[${PYTHON_USEDEP}]
+ net-print/foomatic-db-engine"
+
+S="${WORKDIR}/${PN}"
+
+pkg_setup() {
+ python-single-r1_pkg_setup
+}
diff --git a/net-print/foomatic-gui/metadata.xml b/net-print/foomatic-gui/metadata.xml
new file mode 100644
index 000000000000..f5e9aa5b215c
--- /dev/null
+++ b/net-print/foomatic-gui/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+ <upstream>
+ <remote-id type="freshmeat">foomatic-gui</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-print/gmso2/Manifest b/net-print/gmso2/Manifest
new file mode 100644
index 000000000000..9981b9e18625
--- /dev/null
+++ b/net-print/gmso2/Manifest
@@ -0,0 +1 @@
+DIST gmso2-0.1.tar.bz2 12031 SHA256 0d7f245acc60639e2652fc73ed3177ed50c187b99796988272dc2da3601bff52
diff --git a/net-print/gmso2/gmso2-0.1-r1.ebuild b/net-print/gmso2/gmso2-0.1-r1.ebuild
new file mode 100644
index 000000000000..9deb44fe12f6
--- /dev/null
+++ b/net-print/gmso2/gmso2-0.1-r1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+JAVA_PKG_IUSE="source"
+WANT_ANT_TASKS="ant-nodeps"
+
+inherit eutils java-pkg-2 java-ant-2
+
+DESCRIPTION="GMSO 2 queries ink levels of libinklevel supported printers"
+HOMEPAGE="http://mso.googlecode.com/"
+SRC_URI="http://mso.googlecode.com/files/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+COMMON_DEP="
+ dev-java/libmso:0
+ dev-java/jinklevel:0
+ >=dev-java/java-gnome-4.0.15:4.0"
+RDEPEND="${COMMON_DEP}
+ >=virtual/jre-1.5
+ x11-libs/gksu"
+DEPEND="${COMMON_DEP}
+ >=virtual/jdk-1.5"
+
+EANT_BUILD_TARGET="build"
+EANT_GENTOO_CLASSPATH="jinklevel,libmso,java-gnome-4.0"
+JAVA_ANT_REWRITE_CLASSPATH="true"
+
+src_install() {
+ use source && java-pkg_dosrc src
+ java-pkg_dojar build/${PN}.jar
+ domo build/mo/*.mo || die "domo failed"
+ doicon image/* || die "doicon failed"
+ java-pkg_dolauncher ${PN} --main com.googlecode.mso.gmso2.Gmso2
+ make_desktop_entry "gksu -u root ${PN}" "GMSO 2" gmso2_icon "Printing;;"
+}
diff --git a/net-print/gmso2/metadata.xml b/net-print/gmso2/metadata.xml
new file mode 100644
index 000000000000..6a298fd15827
--- /dev/null
+++ b/net-print/gmso2/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>java</herd>
+ <maintainer>
+ <email>java@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="google-code">mso</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-print/gtklp/Manifest b/net-print/gtklp/Manifest
new file mode 100644
index 000000000000..ca905cf430d3
--- /dev/null
+++ b/net-print/gtklp/Manifest
@@ -0,0 +1,3 @@
+DIST gtklp-1.3.0.src.tar.gz 649791 SHA256 addd9271f0849f6dc417459e52654fb156d72a94e035f8dfd531980981ded001 SHA512 dda05ef49dbcb05e42f6bfbc44b30e5b7a20a0044cf94123b9353fd01252d9e67cf300b980a0a64dacccef867e853cdb2af9a05e5cd1629f734b050826bb0900 WHIRLPOOL 38ac47bb6d839bf127eeeac093e16d17cb7ff24d4cee46a70075625abc03ed80c5daa5ac8c64f91aa916600efe56a9a88e9058b6ecf34cc9a67f5286f20f734d
+DIST gtklp-1.3.1.src.tar.gz 641805 SHA256 734f9b0edb4f01ffce1288553150966231253a5bf4bd76db739ee180a1f39fdb SHA512 22d8e519d5d767add9d786bb9d4e288fffad929e8cac5b0125f654f520e1a466cf0d32bb2f6fbc0804085748403436adc5850b805531dbc971b91eb05627ae70 WHIRLPOOL b985adb5f88ad6ab1f526a3bdea14893690c81ff2bd1f1e557cf9fb3f6f2c84205adfdc2b5c8e29264c7c6e562e9f4961dae1a3d72354de7a462d6196a3d2cef
+DIST gtklp-logo.xpm.gz 2254 SHA256 cb5292aa0b866a39a1d0719c52e46b33241d640c237396b31037ad0aa1353886 SHA512 24fd320bb1fd533d5f539ad5aa22661a2c923c4d6012b7d908a7a8311dcd179f2c7f02a88d52289d659ad89ce63ab40956725051b7dbe14ed23eb3a62e6c9240 WHIRLPOOL a32acf396614bd22fe542ca59d7f8546afc5cdd8efdd5191befde3058376326efa591f4d8f0d88b686170d39ce647fedad5dca035fec87d32db211830be1e37a
diff --git a/net-print/gtklp/gtklp-1.3.0.ebuild b/net-print/gtklp/gtklp-1.3.0.ebuild
new file mode 100644
index 000000000000..210f8af7a150
--- /dev/null
+++ b/net-print/gtklp/gtklp-1.3.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools eutils
+
+DESCRIPTION="A GUI for cupsd"
+HOMEPAGE="http://gtklp.sirtobi.com/"
+SRC_URI="mirror://sourceforge/gtklp/${P}.src.tar.gz
+ mirror://sourceforge/gtklp/logo.xpm.gz -> gtklp-logo.xpm.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc ~sparc x86"
+IUSE="nls ssl"
+
+RDEPEND="x11-libs/gtk+:2
+ >=net-print/cups-1.6
+ nls? ( sys-devel/gettext )
+ ssl? ( dev-libs/openssl )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+DOCS="AUTHORS BUGS ChangeLog README TODO USAGE"
+
+src_prepare() {
+ sed -e '/DEF_BROWSER_CMD/{s:netscape:firefox:}' \
+ -e '/DEF_HELP_HOME/{s:631/sum.html#STANDARD_OPTIONS:631/help/:}' \
+ -i include/defaults.h || die
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable ssl) \
+ --enable-forte #369003
+}
+
+src_install () {
+ default
+
+ doicon "${WORKDIR}"/gtklp-logo.xpm
+ make_desktop_entry 'gtklp -i' "Print files via CUPS" gtklp-logo 'System;HardwareSettings;Settings;Printing'
+ make_desktop_entry gtklpq "CUPS queue manager" gtklp-logo 'System;HardwareSettings;Settings;Printing'
+}
diff --git a/net-print/gtklp/gtklp-1.3.1.ebuild b/net-print/gtklp/gtklp-1.3.1.ebuild
new file mode 100644
index 000000000000..72969c5b4027
--- /dev/null
+++ b/net-print/gtklp/gtklp-1.3.1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools eutils
+
+DESCRIPTION="A GUI for cupsd"
+HOMEPAGE="http://gtklp.sirtobi.com/"
+SRC_URI="mirror://sourceforge/gtklp/${P}.src.tar.gz
+ mirror://sourceforge/gtklp/logo.xpm.gz -> gtklp-logo.xpm.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc ~sparc x86"
+IUSE="nls ssl"
+
+RDEPEND="x11-libs/gtk+:2
+ >=net-print/cups-1.6
+ nls? ( sys-devel/gettext )
+ ssl? ( dev-libs/openssl )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+DOCS="AUTHORS BUGS ChangeLog README TODO USAGE"
+
+src_prepare() {
+ sed -e '/DEF_BROWSER_CMD/{s:netscape:firefox:}' \
+ -e '/DEF_HELP_HOME/{s:631/sum.html#STANDARD_OPTIONS:631/help/:}' \
+ -i include/defaults.h || die
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable ssl) \
+ --enable-forte #369003
+}
+
+src_install () {
+ default
+
+ doicon "${WORKDIR}"/gtklp-logo.xpm
+ make_desktop_entry 'gtklp -i' "Print files via CUPS" gtklp-logo 'System;HardwareSettings;Settings;Printing'
+ make_desktop_entry gtklpq "CUPS queue manager" gtklp-logo 'System;HardwareSettings;Settings;Printing'
+}
diff --git a/net-print/gtklp/metadata.xml b/net-print/gtklp/metadata.xml
new file mode 100644
index 000000000000..943c68620e38
--- /dev/null
+++ b/net-print/gtklp/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+ <longdescription>
+ GtkLP is an graphical frontend for CUPS, the Common UNIX Printing System.
+ It is used to have an easy (and graphical) access to all of the many options
+ of cups-managed printers. Package also includes GtkLPQ - a graphical
+ frontend for CUPS-Printqueues.
+</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">gtklp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-print/gutenprint/Manifest b/net-print/gutenprint/Manifest
new file mode 100644
index 000000000000..46db193b40c3
--- /dev/null
+++ b/net-print/gutenprint/Manifest
@@ -0,0 +1,2 @@
+DIST gutenprint-5.2.10.tar.bz2 6241585 SHA256 431f352b412dfb9809d126a85a37a1fcd1c1826275ace8cdcd4fd9a6ee360e59 SHA512 bb71fd5c127748730dde01471b09907d500b72c35401abaf92c631d04156bacafd4b1a9baef61f48db6c4a622fd612a1e2834ed30207b5b178767ea9d9d5e1ac WHIRLPOOL 4d809f99df3515fc878d3be5df4f48b66fc764eea1f62db15e75d6ca7326c24c6c228bd975575c20f3e7bc8398c1e492e1025784e64a4534f82ad89c7ba92990
+DIST gutenprint-5.2.9.tar.bz2 5720450 SHA256 4b27e4f06f32d30271df89ecb6089bb11bcf2caec5f60b0909e083095354bca0 SHA512 082990e09c49247baab9575b34882026770923915eb1c4ff6f75475cd341691263c7567a430542ead868e80ee6ea82e00ad12c89be0611913f934d66a10a9549 WHIRLPOOL d466288983c4a194c76f505a5adc16af00a651c07a584ff860919b1cf0e2ca870091eac76c6b7d466d9508f3e77a4c6095efe593c0350feeb41dd761adb6e92a
diff --git a/net-print/gutenprint/files/gutenprint-5.2.10-genppd.patch b/net-print/gutenprint/files/gutenprint-5.2.10-genppd.patch
new file mode 100644
index 000000000000..46d8d78b9ead
--- /dev/null
+++ b/net-print/gutenprint/files/gutenprint-5.2.10-genppd.patch
@@ -0,0 +1,23 @@
+diff -urN gutenprint-5.2.8.old/src/cups/Makefile.am gutenprint-5.2.8/src/cups/Makefile.am
+--- gutenprint-5.2.8.old/src/cups/Makefile.am 2012-06-14 14:03:53.011828220 +0200
++++ gutenprint-5.2.8/src/cups/Makefile.am 2012-06-14 14:04:57.672829331 +0200
+@@ -98,16 +98,16 @@
+
+ cups_genppd_@GUTENPRINT_RELEASE_VERSION@_SOURCES = genppd.c i18n.c i18n.h
+ cups_genppd_@GUTENPRINT_RELEASE_VERSION@_CFLAGS = -DALL_LINGUAS='"$(ALL_LINGUAS)"' $(BUILD_SIMPLE_PPDS) $(TRANSLATE_PPDS)
+-cups_genppd_@GUTENPRINT_RELEASE_VERSION@_LDADD = $(CUPS_LIBS) $(GENPPD_LIBS) $(GUTENPRINT_LIBS) @LIBICONV@
++cups_genppd_@GUTENPRINT_RELEASE_VERSION@_LDADD = $(GUTENPRINT_LIBS) $(CUPS_LIBS) $(GENPPD_LIBS) @LIBICONV@
+ cups_genppd_@GUTENPRINT_RELEASE_VERSION@_LDFLAGS = $(STATIC_LDOPTS)
+
+ gutenprint_@GUTENPRINT_RELEASE_VERSION@_SOURCES = genppd.c i18n.c i18n.h
+ gutenprint_@GUTENPRINT_RELEASE_VERSION@_CFLAGS = -DCUPS_DRIVER_INTERFACE -DALL_LINGUAS='"$(ALL_LINGUAS)"' $(BUILD_SIMPLE_PPDS) $(TRANSLATE_PPDS)
+-gutenprint_@GUTENPRINT_RELEASE_VERSION@_LDADD = $(CUPS_LIBS) $(GUTENPRINT_LIBS) @LIBICONV@
++gutenprint_@GUTENPRINT_RELEASE_VERSION@_LDADD = $(GUTENPRINT_LIBS) $(CUPS_LIBS) @LIBICONV@
+ gutenprint_@GUTENPRINT_RELEASE_VERSION@_LDFLAGS = $(STATIC_LDOPTS)
+
+ rastertogutenprint_@GUTENPRINT_RELEASE_VERSION@_SOURCES = rastertoprinter.c i18n.c i18n.h
+-rastertogutenprint_@GUTENPRINT_RELEASE_VERSION@_LDADD = $(CUPS_LIBS) $(GUTENPRINT_LIBS) @LIBICONV@
++rastertogutenprint_@GUTENPRINT_RELEASE_VERSION@_LDADD = $(GUTENPRINT_LIBS) $(CUPS_LIBS) @LIBICONV@
+ rastertogutenprint_@GUTENPRINT_RELEASE_VERSION@_LDFLAGS = $(STATIC_LDOPTS)
+
+ ## Data
diff --git a/net-print/gutenprint/files/gutenprint-5.2.4-CFLAGS.patch b/net-print/gutenprint/files/gutenprint-5.2.4-CFLAGS.patch
new file mode 100644
index 000000000000..e5d64e6042e0
--- /dev/null
+++ b/net-print/gutenprint/files/gutenprint-5.2.4-CFLAGS.patch
@@ -0,0 +1,24 @@
+diff -Naur gutenprint-5.2.3-orig/configure.ac gutenprint-5.2.3/configure.ac
+--- gutenprint-5.2.3-orig/configure.ac 2008-12-20 18:04:24.000000000 -0600
++++ gutenprint-5.2.3/configure.ac 2009-02-13 18:52:19.000000000 -0600
+@@ -631,20 +631,6 @@
+ if test x${USE_MAINTAINER_MODE} = xyes ; then
+ STP_ADD_COMPILER_ARGS([-pedantic -Waggregate-return -Wcast-qual -Wshadow -Wredundant-decls],, [GNUCFLAGS])
+ fi
+- if test x$ENABLE_DEBUG = xyes ; then
+- STP_ADD_COMPILER_ARG([-g])
+- else
+- STP_ADD_FIRST_COMPILER_ARG([-O6 -O3 -O2 -O1 -O])
+- fi
+-else
+- if test x$ENABLE_DEBUG = xyes ; then
+- STP_ADD_COMPILER_ARG([-g])
+- else
+- STP_ADD_FIRST_COMPILER_ARG([-O])
+- fi
+-fi
+-if test x$ENABLE_PROFILE = xyes ; then
+- STP_ADD_COMPILER_ARG([-pg])
+ fi
+ AC_SUBST(GNUCFLAGS)
+
diff --git a/net-print/gutenprint/files/gutenprint-5.2.8-genppd.patch b/net-print/gutenprint/files/gutenprint-5.2.8-genppd.patch
new file mode 100644
index 000000000000..f61fb69ccfd2
--- /dev/null
+++ b/net-print/gutenprint/files/gutenprint-5.2.8-genppd.patch
@@ -0,0 +1,23 @@
+diff -urN gutenprint-5.2.8.old/src/cups/Makefile.am gutenprint-5.2.8/src/cups/Makefile.am
+--- gutenprint-5.2.8.old/src/cups/Makefile.am 2012-06-14 14:03:53.011828220 +0200
++++ gutenprint-5.2.8/src/cups/Makefile.am 2012-06-14 14:04:57.672829331 +0200
+@@ -98,16 +98,16 @@
+
+ cups_genppd_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_SOURCES = genppd.c i18n.c i18n.h
+ cups_genppd_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_CFLAGS = -DALL_LINGUAS='"$(ALL_LINGUAS)"' $(BUILD_SIMPLE_PPDS) $(TRANSLATE_PPDS)
+-cups_genppd_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_LDADD = $(CUPS_LIBS) $(GENPPD_LIBS) $(GUTENPRINT_LIBS) @LIBICONV@
++cups_genppd_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_LDADD = $(GUTENPRINT_LIBS) $(CUPS_LIBS) $(GENPPD_LIBS) @LIBICONV@
+ cups_genppd_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_LDFLAGS = $(STATIC_LDOPTS)
+
+ gutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_SOURCES = genppd.c i18n.c i18n.h
+ gutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_CFLAGS = -DCUPS_DRIVER_INTERFACE -DALL_LINGUAS='"$(ALL_LINGUAS)"' $(BUILD_SIMPLE_PPDS) $(TRANSLATE_PPDS)
+-gutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_LDADD = $(CUPS_LIBS) $(GUTENPRINT_LIBS) @LIBICONV@
++gutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_LDADD = $(GUTENPRINT_LIBS) $(CUPS_LIBS) @LIBICONV@
+ gutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_LDFLAGS = $(STATIC_LDOPTS)
+
+ rastertogutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_SOURCES = rastertoprinter.c i18n.c i18n.h
+-rastertogutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_LDADD = $(CUPS_LIBS) $(GUTENPRINT_LIBS) @LIBICONV@
++rastertogutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_LDADD = $(GUTENPRINT_LIBS) $(CUPS_LIBS) @LIBICONV@
+ rastertogutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_LDFLAGS = $(STATIC_LDOPTS)
+
+ ## Data
diff --git a/net-print/gutenprint/gutenprint-5.2.10.ebuild b/net-print/gutenprint/gutenprint-5.2.10.ebuild
new file mode 100644
index 000000000000..641ea4809e77
--- /dev/null
+++ b/net-print/gutenprint/gutenprint-5.2.10.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib autotools
+
+DESCRIPTION="Ghostscript and cups printer drivers"
+HOMEPAGE="http://gutenprint.sourceforge.net"
+SRC_URI="mirror://sourceforge/gimp-print/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="cups foomaticdb gimp gtk nls readline ppds static-libs"
+
+RDEPEND="app-text/ghostscript-gpl
+ dev-lang/perl
+ readline? ( sys-libs/readline )
+ cups? ( >=net-print/cups-1.1.14 )
+ foomaticdb? ( net-print/foomatic-db-engine )
+ gimp? ( >=media-gfx/gimp-2.2 x11-libs/gtk+:2 )
+ gtk? ( x11-libs/gtk+:2 )
+ nls? ( virtual/libintl )"
+DEPEND="${RDEPEND}
+ gtk? ( virtual/pkgconfig )
+ nls? ( sys-devel/gettext )"
+
+RESTRICT="test"
+
+REQUIRED_USE="gimp? ( gtk )"
+
+DOCS=( AUTHORS ChangeLog NEWS README doc/gutenprint-users-manual.{pdf,odt} )
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-5.2.4-CFLAGS.patch\
+ "${FILESDIR}"/${PN}-5.2.10-genppd.patch # bug 382927
+ sed -i "s:m4local:m4extra:" Makefile.am || die
+
+ sed -e "s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/" \
+ -e "s/AM_PROG_CC_STDC/AC_PROG_CC/" \
+ -i configure.ac || die
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=""
+
+ if use cups && use ppds; then
+ myconf+=" --enable-cups-ppds --enable-cups-level3-ppds"
+ else
+ myconf+=" --disable-cups-ppds"
+ fi
+
+ use foomaticdb \
+ && myconf+=" --with-foomatic3" \
+ || myconf+=" --without-foomatic"
+
+ econf \
+ --enable-test \
+ --with-ghostscript \
+ --disable-translated-cups-ppds \
+ $(use_enable gtk libgutenprintui2) \
+ $(use_with gimp gimp2) \
+ $(use_with gimp gimp2-as-gutenprint) \
+ $(use_with cups) \
+ $(use_enable nls) \
+ $(use_with readline) \
+ $(use_enable static-libs static) \
+ ${myconf}
+}
+
+src_install() {
+ default
+
+ dohtml doc/FAQ.html
+ dohtml -r doc/gutenprintui2/html
+ rm -fR "${ED}"/usr/share/gutenprint/doc
+ if ! use gtk; then
+ rm -f "${ED}"/usr/$(get_libdir)/pkgconfig/gutenprintui2.pc
+ rm -rf "${ED}"/usr/include/gutenprintui2
+ fi
+
+ find "${ED}" -name '*.la' -exec rm -f '{}' +
+}
+
+pkg_postinst() {
+ if [ "${ROOT}" == "/" ] && [ -x /usr/sbin/cups-genppdupdate ]; then
+ elog "Updating installed printer ppd files"
+ elog $(/usr/sbin/cups-genppdupdate)
+ else
+ elog "You need to update installed ppds manually using cups-genppdupdate"
+ fi
+}
diff --git a/net-print/gutenprint/gutenprint-5.2.9.ebuild b/net-print/gutenprint/gutenprint-5.2.9.ebuild
new file mode 100644
index 000000000000..bcab27bc79c0
--- /dev/null
+++ b/net-print/gutenprint/gutenprint-5.2.9.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils multilib autotools
+
+DESCRIPTION="Ghostscript and cups printer drivers"
+HOMEPAGE="http://gutenprint.sourceforge.net"
+SRC_URI="mirror://sourceforge/gimp-print/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 ~arm hppa ia64 ppc ppc64 sparc x86"
+IUSE="cups foomaticdb gimp gtk nls readline ppds static-libs"
+
+RDEPEND="app-text/ghostscript-gpl
+ dev-lang/perl
+ readline? ( sys-libs/readline )
+ cups? ( >=net-print/cups-1.1.14 )
+ foomaticdb? ( net-print/foomatic-db-engine )
+ gimp? ( >=media-gfx/gimp-2.2 x11-libs/gtk+:2 )
+ gtk? ( x11-libs/gtk+:2 )
+ nls? ( virtual/libintl )"
+DEPEND="${RDEPEND}
+ gtk? ( virtual/pkgconfig )
+ nls? ( sys-devel/gettext )"
+
+RESTRICT="test"
+
+REQUIRED_USE="gimp? ( gtk )"
+
+DOCS=( AUTHORS ChangeLog NEWS README doc/gutenprint-users-manual.{pdf,odt} )
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-5.2.4-CFLAGS.patch
+ epatch "${FILESDIR}"/${PN}-5.2.8-genppd.patch # bug 382927
+ sed -i "s:m4local:m4extra:" Makefile.am || die
+
+ sed -e "s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/" \
+ -e "s/AM_PROG_CC_STDC/AC_PROG_CC/" \
+ -i configure.ac || die
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=""
+
+ if use cups && use ppds; then
+ myconf+=" --enable-cups-ppds --enable-cups-level3-ppds"
+ else
+ myconf+=" --disable-cups-ppds"
+ fi
+
+ use foomaticdb \
+ && myconf+=" --with-foomatic3" \
+ || myconf+=" --without-foomatic"
+
+ econf \
+ --enable-test \
+ --with-ghostscript \
+ --disable-translated-cups-ppds \
+ $(use_enable gtk libgutenprintui2) \
+ $(use_with gimp gimp2) \
+ $(use_with gimp gimp2-as-gutenprint) \
+ $(use_with cups) \
+ $(use_enable nls) \
+ $(use_with readline) \
+ $(use_enable static-libs static) \
+ ${myconf}
+}
+
+src_install() {
+ default
+
+ dohtml doc/FAQ.html
+ dohtml -r doc/gutenprintui2/html
+ rm -fR "${ED}"/usr/share/gutenprint/doc
+ if ! use gtk; then
+ rm -f "${ED}"/usr/$(get_libdir)/pkgconfig/gutenprintui2.pc
+ rm -rf "${ED}"/usr/include/gutenprintui2
+ fi
+
+ find "${ED}" -name '*.la' -exec rm -f '{}' +
+}
+
+pkg_postinst() {
+ if [ "${ROOT}" == "/" ] && [ -x /usr/sbin/cups-genppdupdate ]; then
+ elog "Updating installed printer ppd files"
+ elog $(/usr/sbin/cups-genppdupdate)
+ else
+ elog "You need to update installed ppds manually using cups-genppdupdate"
+ fi
+}
diff --git a/net-print/gutenprint/metadata.xml b/net-print/gutenprint/metadata.xml
new file mode 100644
index 000000000000..09e04478b8db
--- /dev/null
+++ b/net-print/gutenprint/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+ <upstream>
+ <remote-id type="sourceforge">gimp-print</remote-id>
+ </upstream>
+</pkgmetadata>
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 !<sys-fs/udev-114 )
+ 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}]
+ >=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 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+ <maintainer>
+ <email>billie@gentoo.org</email>
+ <name>Daniel Pielmeier</name>
+ </maintainer>
+ <use>
+ <flag name="doc">Build documentation</flag>
+ <flag name="fax">Enable fax on multifunction devices which support it</flag>
+ <flag name="hpcups">Build the hpcups driver for cups (by HP)</flag>
+ <flag name="hpijs">Build the IJS driver for cups (Foomatic)</flag>
+ <flag name="kde">Enables <pkg>kde-misc/skanlite</pkg> as scanner GUI with USE="scanner X"</flag>
+ <flag name="libnotify">Enables desktop notifications</flag>
+ <flag name="libusb0">Depend on <pkg>virtual/libusb:0</pkg>. Some old printers do not work with <pkg>virtual/libusb:1</pkg></flag>
+ <flag name="minimal">Only build internal hpijs/hpcups driver (not recommended at all, make sure you know what you are doing)</flag>
+ <flag name="parport">Enable parallel port for devices which require it</flag>
+ <flag name="qt4">Enable graphical interface using Qt 4</flag>
+ <flag name="scanner">Enable scanner on multifunction devices which support it</flag>
+ <flag name="snmp">Add support for <pkg>net-analyzer/net-snmp</pkg> which enables this driver to work over networks (both for server and client)</flag>
+ <flag name="static-ppds">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</flag>
+ <flag name="X">Enables scanner GUI dependencies with USE="scanner" where <pkg>media-gfx/xsane</pkg> is preferred over <pkg>media-gfx/sane-frontends</pkg></flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">hplip</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-print/ink/Manifest b/net-print/ink/Manifest
new file mode 100644
index 000000000000..e18afa9fb616
--- /dev/null
+++ b/net-print/ink/Manifest
@@ -0,0 +1,2 @@
+DIST ink-0.5.1.tar.gz 105174 SHA256 d1985d40baae5cb8bf2c7ea554d24530b1cd95cd93cd143134f19ca7e1e90298 SHA512 12a21279ca4f390c5748b8ab1c62770c82decec1f9bfa3e6c13d7a269a7cb28fb96f92506c532f52fb4e3f1b72012e2c2a08e654a91edb1c73d1f7b778dc5848 WHIRLPOOL 9a5d4ad75ef0ad4fd6879aa1104d55cfdbe333d7411c9265fbf3dccd2cff5ebd4fde5f588f4e1e68abdb4eb9f62695b26e5a91b3ef532c7b441e27734bf86c40
+DIST ink-0.5.2.tar.gz 120024 SHA256 65af1e7d886125889076cd52c0bb09101da1a8811cb8150af0a46afe90ccbbbb SHA512 3e04646141b4c3267cf6e29b28b84b2a879a8edbe3356e469b8195b8fb97787144d167ec2bab41b3365c3171638a31dd566cb690725711d942528e2b4c6d4195 WHIRLPOOL 02d3ae224ee952d9f76dd606ef7d044e44cd58f4ebf512c0bce2d063609cf51265bf3547eb4ee6f4b66338a600b16262f22ac9ade8efab4e0534ed074a13e260
diff --git a/net-print/ink/ink-0.5.1.ebuild b/net-print/ink/ink-0.5.1.ebuild
new file mode 100644
index 000000000000..7528961cb4b8
--- /dev/null
+++ b/net-print/ink/ink-0.5.1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+DESCRIPTION="A command line utility to display the ink level of your printer"
+SRC_URI="mirror://sourceforge/ink/${P/_}.tar.gz"
+HOMEPAGE="http://ink.sourceforge.net/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+DEPEND=">net-print/libinklevel-0.8"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ # always use /bin/bash as configure shell, bug #526548
+ CONFIG_SHELL=/bin/bash default
+}
diff --git a/net-print/ink/ink-0.5.2.ebuild b/net-print/ink/ink-0.5.2.ebuild
new file mode 100644
index 000000000000..c5bf91d29851
--- /dev/null
+++ b/net-print/ink/ink-0.5.2.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="A command line utility to display the ink level of your printer"
+SRC_URI="mirror://sourceforge/ink/${P/_}.tar.gz"
+HOMEPAGE="http://ink.sourceforge.net/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND=">net-print/libinklevel-0.8"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ # always use /bin/bash as configure shell, bug #526548
+ CONFIG_SHELL=/bin/bash default
+}
diff --git a/net-print/ink/metadata.xml b/net-print/ink/metadata.xml
new file mode 100644
index 000000000000..f2b69ae1caa4
--- /dev/null
+++ b/net-print/ink/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+ <upstream>
+ <remote-id type="sourceforge">ink</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-print/kyocera-mita-ppds/Manifest b/net-print/kyocera-mita-ppds/Manifest
new file mode 100644
index 000000000000..22836b903c4b
--- /dev/null
+++ b/net-print/kyocera-mita-ppds/Manifest
@@ -0,0 +1 @@
+DIST Linux_PPDs_KSL8_4.zip 6468249 RMD160 72a69db8f80488f233d1c04674efc77403098243 SHA1 73b6aa4462cef5205459ca6282307ca5ad56c81a SHA256 5e79034c9f92d5b656dcbf8967ebdf2007e28f3fefad97b9e8215aa7ef673c60
diff --git a/net-print/kyocera-mita-ppds/kyocera-mita-ppds-8.4.ebuild b/net-print/kyocera-mita-ppds/kyocera-mita-ppds-8.4.ebuild
new file mode 100644
index 000000000000..33c9867daf18
--- /dev/null
+++ b/net-print/kyocera-mita-ppds/kyocera-mita-ppds-8.4.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="PPD description files for (some) Kyocera Mita Printers"
+HOMEPAGE="http://www.kyoceramita.it/"
+SRC_URI="Linux_PPDs_KSL${PV/\./_}.zip"
+
+LICENSE="kyocera-mita-ppds"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE_LINGUAS="en fr de it pt es"
+
+IUSE=""
+for lingua in $IUSE_LINGUAS; do
+ IUSE="${IUSE} linguas_$lingua"
+done
+
+RDEPEND="net-print/cups"
+DEPEND="app-arch/unzip"
+
+S="${WORKDIR}/PPD's_KSL_${PV}"
+
+RESTRICT="fetch"
+
+pkg_nofetch() {
+ einfo "Please download ${A} from the following URL:"
+ einfo "http://www.kyoceramita.it/index/Service_Departement__/Richiesta_di_Supporto_Tecnico/download_center.false.driver.FS1020D._.IT.html"
+ einfo ""
+ einfo "The FS-1020D driver from the Italian website provides PPDs for a"
+ einfo "number of printers in six languages."
+}
+
+src_compile() { :; }
+
+src_install() {
+ insinto /usr/share/cups/model/KyoceraMita
+
+ local installall=yes
+ for lingua in $IUSE_LINGUAS; do
+ if use linguas_$lingua; then
+ installall=no
+ break;
+ fi
+ done
+
+ inslanguage() {
+ if [[ ${installall} == yes ]] || use linguas_$1; then
+ doins $2/*.ppd || die "failed to install $2 ppds"
+ fi
+ }
+
+ inslanguage en English
+ inslanguage fr French
+ inslanguage de German
+ inslanguage it Italian
+ inslanguage pt Portuguese
+ inslanguage es Spanish
+
+ dohtml ReadMe.htm || die
+}
diff --git a/net-print/kyocera-mita-ppds/metadata.xml b/net-print/kyocera-mita-ppds/metadata.xml
new file mode 100644
index 000000000000..63ac5653603a
--- /dev/null
+++ b/net-print/kyocera-mita-ppds/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>flameeyes@gentoo.org</email>
+ </maintainer>
+</pkgmetadata>
diff --git a/net-print/libgnomecups/Manifest b/net-print/libgnomecups/Manifest
new file mode 100644
index 000000000000..1949d4c595be
--- /dev/null
+++ b/net-print/libgnomecups/Manifest
@@ -0,0 +1 @@
+DIST libgnomecups-0.2.3.tar.bz2 357129 SHA256 e130e80942b386de19a288a4c194ff3dbe9140315b31e982058c8bffbb6a1d29 SHA512 7276dfc92209c8503d8a59ceb192273e41bc13cc5f3515dcc00444deca4b9de6a29d0ec4c89811398e03971fa3f5ccbb85ca477da6c5f2bc26f2fb70dccb6a75 WHIRLPOOL 1bc4693d039d1e51853af74e6928f363ed0d9b29cf9260de162054d0ad84de645ff34d452b8865440d3a3eaf91ae0c3952363c4f4f405f1a023fe227bccd8f78
diff --git a/net-print/libgnomecups/files/enablenet.patch b/net-print/libgnomecups/files/enablenet.patch
new file mode 100644
index 000000000000..f2e113d1440f
--- /dev/null
+++ b/net-print/libgnomecups/files/enablenet.patch
@@ -0,0 +1,11 @@
+--- libgnomecups/gnome-cups-printer.c.orig 2005-08-04 18:21:32.221038336 +0000
++++ libgnomecups/gnome-cups-printer.c 2005-08-04 18:22:00.369759080 +0000
+@@ -282,7 +282,7 @@
+ * that will produce an infinite loop when presented with an invalid
+ * hostname. This will also produce a hang if the remote printer is
+ * unavailable and we do a syncronous lookup. */
+-static gboolean go_directly_to_printer_when_possible = FALSE;
++static gboolean go_directly_to_printer_when_possible = TRUE;
+
+ static void
+ update_attributes (GnomeCupsPrinter *printer)
diff --git a/net-print/libgnomecups/files/libgnomecups-0.2.3-cups-1.6.patch b/net-print/libgnomecups/files/libgnomecups-0.2.3-cups-1.6.patch
new file mode 100644
index 000000000000..68f379c25109
--- /dev/null
+++ b/net-print/libgnomecups/files/libgnomecups-0.2.3-cups-1.6.patch
@@ -0,0 +1,285 @@
+From ae783efde4fa69578651994505462f02b8639220 Mon Sep 17 00:00:00 2001
+From: Alexandre Rostovtsev <tetromino@gentoo.org>
+Date: Tue, 7 Aug 2012 06:53:09 -0400
+Subject: [PATCH] Use CUPS-1.6 IPP API getter/setter functions
+
+CUPS 1.6 makes various structures private and introduces these ippGet
+and ippSet functions for all of the fields in these structures.
+http://www.cups.org/str.php?L3928
+
+We define our own accessors when building against CUPS < 1.6.
+
+Based on work by Jiri Popelka <jpopelka@redhat.com> at
+https://bugzilla.gnome.org/show_bug.cgi?id=679759
+---
+ libgnomecups/gnome-cups-printer.c | 48 +++++++++++++++++++++++++++++-------
+ libgnomecups/gnome-cups-queue.c | 43 +++++++++++++++++++++++++++------
+ libgnomecups/gnome-cups-request.c | 44 ++++++++++++++++++++++++++++-----
+ 3 files changed, 110 insertions(+), 25 deletions(-)
+
+diff --git a/libgnomecups/gnome-cups-printer.c b/libgnomecups/gnome-cups-printer.c
+index c924af0..f5e1ef7 100644
+--- a/libgnomecups/gnome-cups-printer.c
++++ b/libgnomecups/gnome-cups-printer.c
+@@ -37,6 +37,34 @@
+
+ #define UPDATE_TIMEOUT 5000
+
++#if (CUPS_VERSION_MAJOR > 1) || (CUPS_VERSION_MINOR > 5)
++#define HAVE_CUPS_1_6 1
++#endif
++
++#ifndef HAVE_CUPS_1_6
++#define ippGetCount(attr) attr->num_values
++#define ippGetName(attr) attr->name
++#define ippGetInteger(attr, element) attr->values[element].integer
++#define ippGetString(attr, element, language) attr->values[element].string.text
++
++static ipp_attribute_t *
++ippFirstAttribute(ipp_t *ipp)
++{
++ if (!ipp)
++ return (NULL);
++ return (ipp->current = ipp->attrs);
++}
++
++static ipp_attribute_t *
++ippNextAttribute(ipp_t *ipp)
++{
++ if (!ipp || !ipp->current)
++ return (NULL);
++ return (ipp->current = ipp->current->next);
++}
++#endif
++
++
+ struct _GnomeCupsPPDFile {
+ char name[1];
+ };
+@@ -173,9 +201,9 @@ map_reasons (GnomeCupsPrinter *printer,
+ printer->details->state_reasons = NULL;
+
+ /* cf. RFC2911 4.4.12 */
+- for (i = 0; i < attr->num_values; i++) {
++ for (i = 0; i < ippGetCount (attr); i++) {
+ const char *p;
+- const char *keyword = attr->values [i].string.text;
++ const char *keyword = ippGetString (attr, i, NULL);
+
+ reason = g_new (GnomeCupsPrinterReason, 1);
+
+@@ -224,8 +252,8 @@ gnome_cups_printer_get_info (GnomeCupsPrinter *printer)
+ return printer->details->info;
+ }
+
+-#define MAP_INT(v,a) {if (!g_ascii_strcasecmp (attr->name, (a))) { if ((v) != attr->values[0].integer) { changed = TRUE; } (v) = attr->values[0].integer; }}
+-#define MAP_STRING(v,a) {if (!g_ascii_strcasecmp (attr->name, (a))) { if (!v || strcmp (v, attr->values[0].string.text)) { g_free (v); changed = TRUE; (v) = g_strdup (attr->values[0].string.text); }}}
++#define MAP_INT(v,a) {if (!g_ascii_strcasecmp (ippGetName (attr), (a))) { if ((v) != ippGetInteger (attr, 0)) { changed = TRUE; } (v) = ippGetInteger (attr, 0); }}
++#define MAP_STRING(v,a) {if (!g_ascii_strcasecmp (ippGetName (attr), (a))) { if (!v || strcmp (v, ippGetString (attr, 0, NULL))) { g_free (v); changed = TRUE; (v) = g_strdup (ippGetString (attr, 0, NULL)); }}}
+
+ static void
+ attributes_update_cb (guint id,
+@@ -243,14 +271,14 @@ attributes_update_cb (guint id,
+ changed = FALSE;
+
+ if (!error && response) {
+- for (attr = response->attrs; attr != NULL; attr = attr->next) {
+- if (!attr->name) {
++ for (attr = ippFirstAttribute (response); attr != NULL; attr = ippNextAttribute (response)) {
++ if (!ippGetName (attr)) {
+ continue;
+ }
+- if (!g_ascii_strcasecmp (attr->name, "attributes-charset") || !strcmp (attr->name, "attributes-charset")) {
++ if (!g_ascii_strcasecmp (ippGetName (attr), "attributes-charset") || !strcmp (ippGetName (attr), "attributes-charset")) {
+ continue;
+ }
+- if (!g_ascii_strcasecmp (attr->name, "printer-state-reasons")) {
++ if (!g_ascii_strcasecmp (ippGetName (attr), "printer-state-reasons")) {
+ map_reasons (printer, attr);
+ }
+ MAP_INT (printer->details->state, "printer-state");
+@@ -570,7 +598,7 @@ get_default (void)
+
+ attr = ippFindAttribute (response, "printer-name", IPP_TAG_NAME);
+ if (attr) {
+- name = g_strdup (attr->values[0].string.text);
++ name = g_strdup (ippGetString (attr, 0, NULL));
+ } else {
+ name = NULL;
+ }
+@@ -698,7 +726,7 @@ get_printer_names (void)
+ attr = ippFindAttribute (response, "printer-name", IPP_TAG_NAME);
+ while (attr) {
+ ret = g_list_prepend (ret,
+- g_strdup (attr->values[0].string.text));
++ g_strdup (ippGetString (attr, 0, NULL)));
+
+ attr = ippFindNextAttribute (response,
+ "printer-name",
+diff --git a/libgnomecups/gnome-cups-queue.c b/libgnomecups/gnome-cups-queue.c
+index 9f98ed9..298db42 100644
+--- a/libgnomecups/gnome-cups-queue.c
++++ b/libgnomecups/gnome-cups-queue.c
+@@ -15,6 +15,33 @@
+
+ #define UPDATE_TIMEOUT 3000
+
++#if (CUPS_VERSION_MAJOR > 1) || (CUPS_VERSION_MINOR > 5)
++#define HAVE_CUPS_1_6 1
++#endif
++
++#ifndef HAVE_CUPS_1_6
++#define ippGetName(attr) attr->name
++#define ippGetInteger(attr, element) attr->values[element].integer
++#define ippGetString(attr, element, language) attr->values[element].string.text
++
++static ipp_attribute_t *
++ippFirstAttribute(ipp_t *ipp)
++{
++ if (!ipp)
++ return (NULL);
++ return (ipp->current = ipp->attrs);
++}
++
++static ipp_attribute_t *
++ippNextAttribute(ipp_t *ipp)
++{
++ if (!ipp || !ipp->current)
++ return (NULL);
++ return (ipp->current = ipp->current->next);
++}
++#endif
++
++
+ struct _GnomeCupsQueueDetails {
+ char *queue_name;
+ GList *jobs;
+@@ -199,8 +226,8 @@ finish_job (GnomeCupsJob *job)
+ job->size = job->size * 1024;
+ }
+
+-#define MAP_STR(dest, src) { if (!g_ascii_strcasecmp (attr->name, (src))) { if ((dest) != NULL) g_free (dest); (dest) = g_strdup (attr->values[0].string.text);}}
+-#define MAP_INT(dest, src) { if (!g_ascii_strcasecmp (attr->name, (src))) { (dest) = attr->values[0].integer; } }
++#define MAP_STR(dest, src) { if (!g_ascii_strcasecmp (ippGetName (attr), (src))) { if ((dest) != NULL) g_free (dest); (dest) = g_strdup (ippGetString (attr, 0, NULL));}}
++#define MAP_INT(dest, src) { if (!g_ascii_strcasecmp (ippGetName (attr), (src))) { (dest) = ippGetInteger (attr, 0); } }
+
+ static void
+ get_jobs_cb (guint id,
+@@ -231,8 +258,8 @@ get_jobs_cb (guint id,
+
+ if (response) {
+ job = g_new0 (GnomeCupsJob, 1);
+- for (attr = response->attrs; attr != NULL; attr = attr->next) {
+- if (attr->name == NULL) {
++ for (attr = ippFirstAttribute (response); attr != NULL; attr = ippNextAttribute (response)) {
++ if (ippGetName (attr) == NULL) {
+ if (job->name) {
+ finish_job (job);
+ jobs = g_list_prepend (jobs, job);
+@@ -244,7 +271,7 @@ get_jobs_cb (guint id,
+ continue;
+ }
+
+- if (!g_ascii_strcasecmp (attr->name, "attributes-charset") || !g_ascii_strcasecmp (attr->name, "attributes-charset")) {
++ if (!g_ascii_strcasecmp (ippGetName (attr), "attributes-charset") || !g_ascii_strcasecmp (ippGetName (attr), "attributes-charset")) {
+ continue;
+
+ }
+@@ -355,8 +382,8 @@ gnome_cups_queue_get_job_nocache (GnomeCupsQueue *queue,
+
+ if (response) {
+ job = g_new0 (GnomeCupsJob, 1);
+- for (attr = response->attrs; attr != NULL; attr = attr->next) {
+- if (attr->name == NULL) {
++ for (attr = ippFirstAttribute (response); attr != NULL; attr = ippNextAttribute (response)) {
++ if (ippGetName (attr) == NULL) {
+ if (job->name) {
+ finish_job (job);
+ } else {
+@@ -366,7 +393,7 @@ gnome_cups_queue_get_job_nocache (GnomeCupsQueue *queue,
+ break;
+ }
+
+- if (!g_ascii_strcasecmp (attr->name, "attributes-charset") || !g_ascii_strcasecmp (attr->name, "attributes-charset")) {
++ if (!g_ascii_strcasecmp (ippGetName (attr), "attributes-charset") || !g_ascii_strcasecmp (ippGetName (attr), "attributes-charset")) {
+ continue;
+ }
+
+diff --git a/libgnomecups/gnome-cups-request.c b/libgnomecups/gnome-cups-request.c
+index c94f623..13f0948 100644
+--- a/libgnomecups/gnome-cups-request.c
++++ b/libgnomecups/gnome-cups-request.c
+@@ -19,6 +19,36 @@
+ #define STOP_UNUSED_THREADS_TIMEOUT 60
+ #define CLOSE_UNUSED_CONNECTIONS_TIMEOUT 30
+
++#if (CUPS_VERSION_MAJOR > 1) || (CUPS_VERSION_MINOR > 5)
++#define HAVE_CUPS_1_6 1
++#endif
++
++#ifndef HAVE_CUPS_1_6
++#define ippGetCount(attr) attr->num_values
++#define ippGetValueTag(attr) attr->value_tag
++#define ippGetName(attr) attr->name
++#define ippGetBoolean(attr, element) attr->values[element].boolean
++#define ippGetInteger(attr, element) attr->values[element].integer
++#define ippGetString(attr, element, language) attr->values[element].string.text
++
++static ipp_attribute_t *
++ippFirstAttribute(ipp_t *ipp)
++{
++ if (!ipp)
++ return (NULL);
++ return (ipp->current = ipp->attrs);
++}
++
++static ipp_attribute_t *
++ippNextAttribute(ipp_t *ipp)
++{
++ if (!ipp || !ipp->current)
++ return (NULL);
++ return (ipp->current = ipp->current->next);
++}
++#endif
++
++
+ typedef struct
+ {
+ GMutex *mutex;
+@@ -276,14 +306,14 @@ dump_request (ipp_t const *req)
+ unsigned i;
+ ipp_attribute_t *attr;
+
+- for (attr = req->attrs; attr != NULL; attr = attr->next) {
+- g_print ("%s", attr->name);
+- for (i = 0 ; i < attr->num_values ; i++) {
++ for (attr = ippFirstAttribute (req); attr != NULL; attr = ippNextAttribute (req)) {
++ g_print ("%s", ippGetName (attr));
++ for (i = 0 ; i < ippGetCount (attr) ; i++) {
+ g_print ("\t[%d] = ", i);
+- switch (attr->value_tag & ~IPP_TAG_COPY) {
++ switch (ippGetValueTag (attr) & ~IPP_TAG_COPY) {
+ case IPP_TAG_INTEGER:
+ case IPP_TAG_ENUM:
+- g_print ("%d\n", attr->values[i].integer);
++ g_print ("%d\n", ippGetInteger (attr, i));
+ break;
+
+ case IPP_TAG_STRING:
+@@ -294,11 +324,11 @@ dump_request (ipp_t const *req)
+ case IPP_TAG_CHARSET:
+ case IPP_TAG_LANGUAGE:
+ case IPP_TAG_MIMETYPE:
+- g_print ("'%s'\n", attr->values[i].string.text);
++ g_print ("'%s'\n", ippGetString (attr, i, NULL));
+ break;
+
+ case IPP_TAG_BOOLEAN:
+- g_print ("%s\n", (int)attr->values[i].boolean ? "true" : "false");
++ g_print ("%s\n", (int)ippGetBoolean (attr, i) ? "true" : "false");
+ break;
+
+ default:
+--
+1.7.8.6
+
diff --git a/net-print/libgnomecups/files/libgnomecups-0.2.3-cups-config.patch b/net-print/libgnomecups/files/libgnomecups-0.2.3-cups-config.patch
new file mode 100644
index 000000000000..10eb75d1bc46
--- /dev/null
+++ b/net-print/libgnomecups/files/libgnomecups-0.2.3-cups-config.patch
@@ -0,0 +1,34 @@
+From 8f5e326dd89d98b2d34cf6f97583be4eb819b02b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Sun, 29 Jun 2014 10:36:14 +0200
+Subject: [PATCH] Use AC_PATH_TOOL to find cups-config. And actually use the
+ result.
+
+---
+ configure.in | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index 3f0ccc5..0bd367e 100644
+--- a/configure.in
++++ b/configure.in
+@@ -22,13 +22,13 @@ AC_SUBST(GLIB_REQUIRED)
+
+ PKG_CHECK_MODULES(LIBGNOMECUPS, glib-2.0 >= $GLIB_REQUIRED gobject-2.0 >= $GLIB_REQUIRED gthread-2.0 >= $GLIB_REQUIRED)
+
+-AC_PATH_PROG(CUPS_CONFIG, cups-config, no)
++AC_PATH_TOOL(CUPS_CONFIG, cups-config, no)
+ if test "$CUPS_CONFIG" = "no"; then
+ AC_MSG_ERROR([Please install cups development packages])
+ fi
+
+-CUPS_CFLAGS=`cups-config --cflags | sed 's/-O[0-9]*//' | sed 's/-m[^\t]*//g'`
+-CUPS_LIBS=`cups-config --libs`
++CUPS_CFLAGS=`$CUPS_CONFIG --cflags | sed 's/-O[0-9]*//' | sed 's/-m[^\t]*//g'`
++CUPS_LIBS=`$CUPS_CONFIG --libs`
+
+ AC_SUBST(CUPS_CFLAGS)
+ AC_SUBST(CUPS_LIBS)
+--
+2.0.0
+
diff --git a/net-print/libgnomecups/files/libgnomecups-0.2.3-format-string.patch b/net-print/libgnomecups/files/libgnomecups-0.2.3-format-string.patch
new file mode 100644
index 000000000000..797231416b64
--- /dev/null
+++ b/net-print/libgnomecups/files/libgnomecups-0.2.3-format-string.patch
@@ -0,0 +1,34 @@
+From afe4d5299e6f48ace0fbedbfba8159812afcdd1c Mon Sep 17 00:00:00 2001
+From: Lubomir Rintel <lkundrak@v3.sk>
+Date: Tue, 14 Jan 2014 15:23:59 +0100
+Subject: [PATCH] Fix build with -Werror=format-security
+
+---
+ libgnomecups/gnome-cups-request.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/libgnomecups/gnome-cups-request.c b/libgnomecups/gnome-cups-request.c
+index c94f623..fa1bd97 100644
+--- a/libgnomecups/gnome-cups-request.c
++++ b/libgnomecups/gnome-cups-request.c
+@@ -353,7 +353,7 @@ request_thread_main (GnomeCupsRequest *request,
+ g_warning ("IPP request failed with status %d", status);
+ if (request->error != NULL)
+ *(request->error) = g_error_new (GNOME_CUPS_ERROR,
+- status, ippErrorString (status));
++ status, "%s", ippErrorString (status));
+ } else if (request->response && _gnome_cups_debug) {
+ g_print ("response = \n");
+ dump_request (request->response);
+@@ -364,7 +364,7 @@ request_thread_main (GnomeCupsRequest *request,
+ request->response = NULL;
+ if (HTTP_OK != status && request->error != NULL)
+ *(request->error) = g_error_new (GNOME_CUPS_ERROR,
+- status, httpStatus (status));
++ status, "%s", httpStatus (status));
+ } else {
+ g_warning ("Neither request nor output_fd set");
+ if (request->error != NULL)
+--
+1.8.3.1
+
diff --git a/net-print/libgnomecups/files/libgnomecups-0.2.3-g_list_find_custom.patch b/net-print/libgnomecups/files/libgnomecups-0.2.3-g_list_find_custom.patch
new file mode 100644
index 000000000000..3383cde16786
--- /dev/null
+++ b/net-print/libgnomecups/files/libgnomecups-0.2.3-g_list_find_custom.patch
@@ -0,0 +1,94 @@
+From 14979a2356fd751d82d037db65ce92072097bbf3 Mon Sep 17 00:00:00 2001
+From: Kjartan Maraas <kmaraas@gnome.org>
+Date: Wed, 30 Jan 2008 17:30:43 +0000
+Subject: [PATCH] Fix some warnings. Fix wrong order of arguments to
+ g_list_find_custom.
+
+2008-01-30 Kjartan Maraas <kmaraas@gnome.org>
+
+ * libgnomecups/gnome-cups-printer.c: (set_timeout),
+ (gnome_cups_printer_get_state_name),
+ (_gnome_cups_printer_get_host): Fix some warnings.
+ * libgnomecups/gnome-cups-queue.c: (gnome_cups_queue_get_job):
+ Fix wrong order of arguments to g_list_find_custom.
+
+svn path=/trunk/; revision=237
+---
+ ChangeLog | 8 ++++++++
+ libgnomecups/gnome-cups-printer.c | 7 +++----
+ libgnomecups/gnome-cups-queue.c | 4 ++--
+ 3 files changed, 13 insertions(+), 6 deletions(-)
+
+diff --git a/ChangeLog b/ChangeLog
+index b41ac9e..166c87a 100644
+--- a/ChangeLog
++++ b/ChangeLog
+@@ -1,3 +1,11 @@
++2008-01-30 Kjartan Maraas <kmaraas@gnome.org>
++
++ * libgnomecups/gnome-cups-printer.c: (set_timeout),
++ (gnome_cups_printer_get_state_name),
++ (_gnome_cups_printer_get_host): Fix some warnings.
++ * libgnomecups/gnome-cups-queue.c: (gnome_cups_queue_get_job):
++ Fix wrong order of arguments to g_list_find_custom.
++
+ 2008-01-18 Gil Forcada <gforcada@gnome.org>
+
+ * configure.in: Added mk, tr and zh_HK to ALL_LINGUAS.
+diff --git a/libgnomecups/gnome-cups-printer.c b/libgnomecups/gnome-cups-printer.c
+index 9c5c7d3..704f205 100644
+--- a/libgnomecups/gnome-cups-printer.c
++++ b/libgnomecups/gnome-cups-printer.c
+@@ -791,7 +791,7 @@ set_timeout (void)
+
+ if (should_timeout && !update_timeout_id) {
+ update_timeout_id = g_timeout_add (UPDATE_TIMEOUT,
+- update_printers_timeout,
++ (GSourceFunc)update_printers_timeout,
+ NULL);
+ } else if (!should_timeout && update_timeout_id) {
+ g_source_remove (update_timeout_id);
+@@ -1069,7 +1069,6 @@ gnome_cups_printer_get_state (GnomeCupsPrinter *printer)
+ const char *
+ gnome_cups_printer_get_state_name (GnomeCupsPrinter *printer)
+ {
+- const char *state_str;
+ ipp_pstate_t state;
+
+ g_return_val_if_fail (GNOME_CUPS_IS_PRINTER (printer), NULL);
+@@ -1079,7 +1078,7 @@ gnome_cups_printer_get_state_name (GnomeCupsPrinter *printer)
+
+ state = printer->details->state;
+
+- return state_str = _(printer_state_strings[state - IPP_PRINTER_IDLE]);
++ return _(printer_state_strings[state - IPP_PRINTER_IDLE]);
+ }
+
+ const char *
+@@ -2001,7 +2000,7 @@ _gnome_cups_printer_get_host (GnomeCupsPrinter *printer)
+ {
+ gchar *host = NULL;
+
+-#warning this is broken for smb://user:pass@host/printer urls
++ /* warning this is broken for smb://user:pass@host/printer urls */
+ if (go_directly_to_printer_when_possible &&
+ printer->details->printer_uri) {
+ gchar *x, *y;
+diff --git a/libgnomecups/gnome-cups-queue.c b/libgnomecups/gnome-cups-queue.c
+index d9b9a92..9f98ed9 100644
+--- a/libgnomecups/gnome-cups-queue.c
++++ b/libgnomecups/gnome-cups-queue.c
+@@ -413,8 +413,8 @@ gnome_cups_queue_get_job (GnomeCupsQueue *queue,
+ {
+ if (cache_ok) {
+ GList *link = g_list_find_custom (queue->details->jobs,
+- (GCompareFunc) find_job_by_id,
+- GINT_TO_POINTER (job_id));
++ GINT_TO_POINTER (job_id),
++ (GCompareFunc) find_job_by_id);
+ if (link)
+ return gnome_cups_job_dup (link->data);
+ }
+--
+1.7.8.4
+
diff --git a/net-print/libgnomecups/files/libgnomecups-0.2.3-glib.h.patch b/net-print/libgnomecups/files/libgnomecups-0.2.3-glib.h.patch
new file mode 100644
index 000000000000..3f73af861c04
--- /dev/null
+++ b/net-print/libgnomecups/files/libgnomecups-0.2.3-glib.h.patch
@@ -0,0 +1,38 @@
+From d84eee9450b3b6f6155074915efc61bedcc8d446 Mon Sep 17 00:00:00 2001
+From: Dominique Leuenberger <dimstar@opensuse.org>
+Date: Sun, 27 Nov 2011 21:36:41 +0100
+Subject: [PATCH] Fix: Only glib.h can be included
+
+---
+ libgnomecups/gnome-cups-i18n.c | 2 +-
+ libgnomecups/gnome-cups-init.h | 3 +--
+ 2 files changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/libgnomecups/gnome-cups-i18n.c b/libgnomecups/gnome-cups-i18n.c
+index 8987c5c..127756d 100644
+--- a/libgnomecups/gnome-cups-i18n.c
++++ b/libgnomecups/gnome-cups-i18n.c
+@@ -1,5 +1,5 @@
+ #include <config.h>
+-#include <glib/gmacros.h>
++#include <glib.h>
+ #include "gnome-cups-i18n.h"
+
+ #ifdef ENABLE_NLS
+diff --git a/libgnomecups/gnome-cups-init.h b/libgnomecups/gnome-cups-init.h
+index 22b682a..c4600fc 100644
+--- a/libgnomecups/gnome-cups-init.h
++++ b/libgnomecups/gnome-cups-init.h
+@@ -1,8 +1,7 @@
+ #ifndef GNOME_CUPS_INIT
+ #define GNOME_CUPS_INIT
+
+-#include <glib/gtypes.h>
+-#include <glib/gmacros.h>
++#include <glib.h>
+
+ G_BEGIN_DECLS
+
+--
+1.7.7
+
diff --git a/net-print/libgnomecups/files/libgnomecups-0.2.3-lpoptions.patch b/net-print/libgnomecups/files/libgnomecups-0.2.3-lpoptions.patch
new file mode 100644
index 000000000000..b682e450746a
--- /dev/null
+++ b/net-print/libgnomecups/files/libgnomecups-0.2.3-lpoptions.patch
@@ -0,0 +1,13 @@
+--- libgnomecups-0.2.2.orig/libgnomecups/gnome-cups-printer.c
++++ libgnomecups-0.2.2/libgnomecups/gnome-cups-printer.c
+@@ -510,6 +510,10 @@
+ num_dests = cups_get_dests (filename, num_dests, dests);
+ g_free (filename);
+
++ filename = g_build_filename (g_get_home_dir (), ".cups", "lpoptions", NULL);
++ num_dests = cups_get_dests (filename, num_dests, dests);
++ g_free (filename);
++
+ return num_dests;
+ }
+
diff --git a/net-print/libgnomecups/files/libgnomecups-0.2.3-pkgconfig.patch b/net-print/libgnomecups/files/libgnomecups-0.2.3-pkgconfig.patch
new file mode 100644
index 000000000000..8fe6502a6f38
--- /dev/null
+++ b/net-print/libgnomecups/files/libgnomecups-0.2.3-pkgconfig.patch
@@ -0,0 +1,10 @@
+--- libgnomecups-1.0.pc.in~ 2007-01-02 01:18:51.000000000 +0100
++++ libgnomecups-1.0.pc.in 2011-05-08 13:21:35.000000000 +0200
+@@ -7,5 +7,6 @@
+ Description: GNOME CUPS Library
+ Version: @VERSION@
+ Requires: glib-2.0 gobject-2.0
+-Libs: -L${libdir} -lgnomecups-1.0 @CUPS_LIBS@
++Libs: -L${libdir} -lgnomecups-1.0
++Libs.private: -L${libdir} -lgnomecups-1.0 @CUPS_LIBS@
+ Cflags: -I${includedir} @CUPS_CFLAGS@
diff --git a/net-print/libgnomecups/libgnomecups-0.2.3-r3.ebuild b/net-print/libgnomecups/libgnomecups-0.2.3-r3.ebuild
new file mode 100644
index 000000000000..e4c0da3222be
--- /dev/null
+++ b/net-print/libgnomecups/libgnomecups-0.2.3-r3.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+GCONF_DEBUG="yes"
+GNOME_TARBALL_SUFFIX="bz2"
+
+inherit autotools eutils gnome2
+
+DESCRIPTION="GNOME cups library"
+HOMEPAGE="http://www.gnome.org/"
+
+LICENSE="GPL-2 LGPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+IUSE=""
+
+RDEPEND="
+ >=dev-libs/glib-2:2
+ >=net-print/cups-1.3.8
+"
+DEPEND="${RDEPEND}
+ >=dev-util/intltool-0.28
+ gnome-base/gnome-common
+ virtual/pkgconfig
+"
+
+src_prepare() {
+ epatch "${FILESDIR}"/enablenet.patch
+
+ # Fix .pc file per bug #235013
+ epatch "${FILESDIR}"/${P}-pkgconfig.patch
+
+ # Upstream fix for g_list_find_custom() argument order
+ epatch "${FILESDIR}/${P}-g_list_find_custom.patch"
+
+ # >=glib-2.31 compat, bug #400789, https://bugzilla.gnome.org/show_bug.cgi?id=664930
+ epatch "${FILESDIR}/${P}-glib.h.patch"
+
+ # cups-1.6 compat, bug #428812
+ epatch "${FILESDIR}/${P}-cups-1.6.patch"
+
+ eautoreconf # To fix intltool files making LINGUAS to be honored
+ gnome2_src_prepare
+}
+
+src_configure() {
+ gnome2_src_configure --disable-static
+}
diff --git a/net-print/libgnomecups/libgnomecups-0.2.3-r5.ebuild b/net-print/libgnomecups/libgnomecups-0.2.3-r5.ebuild
new file mode 100644
index 000000000000..a5e74006e302
--- /dev/null
+++ b/net-print/libgnomecups/libgnomecups-0.2.3-r5.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+GCONF_DEBUG="yes"
+GNOME_TARBALL_SUFFIX="bz2"
+
+inherit autotools eutils gnome2 multilib-minimal
+
+DESCRIPTION="GNOME cups library"
+HOMEPAGE="http://www.gnome.org/"
+
+LICENSE="GPL-2 LGPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+IUSE=""
+
+RDEPEND="
+ >=dev-libs/glib-2.34.3:2[${MULTILIB_USEDEP}]
+ >=net-print/cups-1.7.1-r1[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}
+ >=dev-util/intltool-0.28
+ gnome-base/gnome-common
+ >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
+"
+
+src_prepare() {
+ epatch "${FILESDIR}"/enablenet.patch
+
+ # Fix .pc file per bug #235013
+ epatch "${FILESDIR}"/${P}-pkgconfig.patch
+
+ # Upstream fix for g_list_find_custom() argument order
+ epatch "${FILESDIR}/${P}-g_list_find_custom.patch"
+
+ # >=glib-2.31 compat, bug #400789, https://bugzilla.gnome.org/show_bug.cgi?id=664930
+ epatch "${FILESDIR}/${P}-glib.h.patch"
+
+ # cups-1.6 compat, bug #428812
+ epatch "${FILESDIR}/${P}-cups-1.6.patch"
+
+ # so it looks for cups-config... how about using $CUPS_CONFIG then?
+ # and also use AC_PATH_TOOL to respect $CHOST
+ epatch "${FILESDIR}/${P}-cups-config.patch"
+
+ # Fix building with -Werror=format-security, bug #517612
+ epatch "${FILESDIR}/${P}-format-string.patch"
+
+ # Look for lpoptions in the right spot, upstream bug #520449
+ epatch "${FILESDIR}/${P}-lpoptions.patch"
+
+ eautoreconf # To fix intltool files making LINGUAS to be honored
+ gnome2_src_prepare
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE=${S} \
+ gnome2_src_configure --disable-static
+}
+
+multilib_src_install() {
+ gnome2_src_install
+}
diff --git a/net-print/libgnomecups/metadata.xml b/net-print/libgnomecups/metadata.xml
new file mode 100644
index 000000000000..f7a4fe6435e1
--- /dev/null
+++ b/net-print/libgnomecups/metadata.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>gnome</herd>
+<herd>printing</herd>
+</pkgmetadata>
diff --git a/net-print/libinklevel/Manifest b/net-print/libinklevel/Manifest
new file mode 100644
index 000000000000..8ac4c5099c7d
--- /dev/null
+++ b/net-print/libinklevel/Manifest
@@ -0,0 +1,4 @@
+DIST libinklevel-0.8.0.tar.gz 326397 SHA256 1442cdb34c528b5c50d3cd8cb19eb07054a773de755aca0c4073346b8f1de3be
+DIST libinklevel-0.9.0.tar.gz 367521 SHA256 380df78fb814add2e1c63bd5db0a169e8eea1d1378d9e1bef6a3879124384d61 SHA512 23ff9a0f959aff953006a51d1bced235be57dee7bf4046147cdec85525b8d8003d3d3d22bd116b7a3adf3620b10002f736e0156968c78224bccab63505bc5b49 WHIRLPOOL 8c5ce8219a763a0312c6fea33147c044a2559ed77de164cac1284e4ca391533211cad44ca13208afb122f369316deffdb305627713cec187f0b4921dd6fa8266
+DIST libinklevel-0.9.1.tar.gz 367651 SHA256 3916dca5af4b9719fca65d4ff74e25a59ae6516c303e7b832a934af1fedef395 SHA512 c21ac2ed2949777dcca0f2258de8e0bf565b429b579d6b2c6c7bdb218935b9b7c88e891b240996c4c5274bb7bc8f5796bd9bb1f90b89d9b09580ab8fb9dd067a WHIRLPOOL 22ea11a82786d70ff465a03e556238afe7b4c47bf24a787aa239cff99f566cfc4016a3b27d6d65ed859b5ebc39e3bae3d86c61b01749fc2ba6e5ad7c4b34baba
+DIST libinklevel-0.9.2.tar.gz 367928 SHA256 08178fb57cdab44ffa9135a76948604d7f5d1756f44ca9c190b3d3e693e3bc63 SHA512 127acaef2d2c09981b4da80e4d86a869c66f0f2f9733e139800bc944c159ddca42829499a97ecbb712b74c950bb28a4e22382c9c2a42d374bc5593f8802b6c59 WHIRLPOOL 62894ed4010c96e244ce09d6d666288b77b6d041ad612787167511f311db5e8a31ddfb1dce714c7f306d765119c64f5f251dd6116563bdd285b4c49cf6216ecc
diff --git a/net-print/libinklevel/files/libinklevel-0.8.0-automagicdebug.patch b/net-print/libinklevel/files/libinklevel-0.8.0-automagicdebug.patch
new file mode 100644
index 000000000000..68af9e102f9d
--- /dev/null
+++ b/net-print/libinklevel/files/libinklevel-0.8.0-automagicdebug.patch
@@ -0,0 +1,20 @@
+--- configure.in 2010-03-28 22:11:26.000000000 +0300
++++ configure.in.fixed 2010-03-28 22:18:14.000000000 +0300
+@@ -16,9 +16,14 @@
+
+ ## Determine hostname & OS
+ ## AC_CANONICAL_HOST
+-
+-AC_ARG_ENABLE([debug], [ --enable-debug enable debugging output],
+- AC_DEFINE(DEBUG, 1, [enable debugging output]))
++AC_ARG_ENABLE(debug,
++ [ --enable-debug Enable debugging output if available (default=no)],
++ [ case "${enableval}" in
++ yes|"") enabled=yes; AC_DEFINE(DEBUG, 1, [enable debugging output]) ;;
++ no) ;;
++ *) ;;
++ esac],
++)
+
+ ## Check for programs
+ ## we want libtool to build our libs
diff --git a/net-print/libinklevel/libinklevel-0.8.0-r1.ebuild b/net-print/libinklevel/libinklevel-0.8.0-r1.ebuild
new file mode 100644
index 000000000000..64aea946c751
--- /dev/null
+++ b/net-print/libinklevel/libinklevel-0.8.0-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit autotools eutils
+
+MY_P="${P/_/}"
+DESCRIPTION="A library to get the ink level of your printer"
+HOMEPAGE="http://libinklevel.sourceforge.net/"
+SRC_URI="mirror://sourceforge/libinklevel/${MY_P}.tar.gz"
+
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+LICENSE="GPL-2"
+IUSE="debug"
+
+DEPEND=">=sys-libs/libieee1284-0.2.11"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-automagicdebug.patch
+ sed -i -e "/^dist_doc_DATA/d" Makefile.am \
+ || die "Failed to disable installation of docs"
+ eautoreconf
+}
+
+src_configure() {
+ econf $(use_enable debug)
+}
+
+src_install () {
+ emake DESTDIR="${D}" install || die "emake install failed"
+ dodoc AUTHORS ChangeLog NEWS README || die "dodoc failed"
+ rm "${D}"/usr/lib/libinklevel.la
+}
diff --git a/net-print/libinklevel/libinklevel-0.9.0.ebuild b/net-print/libinklevel/libinklevel-0.9.0.ebuild
new file mode 100644
index 000000000000..28cbfc1574fb
--- /dev/null
+++ b/net-print/libinklevel/libinklevel-0.9.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools eutils multilib
+
+MY_P="${P/_/}"
+DESCRIPTION="A library to get the ink level of your printer"
+HOMEPAGE="http://libinklevel.sourceforge.net/"
+SRC_URI="mirror://sourceforge/libinklevel/${MY_P}.tar.gz"
+
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+LICENSE="GPL-2"
+IUSE="debug static-libs"
+
+DEPEND=">=sys-libs/libieee1284-0.2.11
+ virtual/libusb:1"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ sed -i -e "/^dist_doc_DATA/d" Makefile.am \
+ || die "Failed to disable installation of docs"
+ eautoreconf
+}
+
+src_configure() {
+ econf $(use_enable debug)
+}
+
+src_install () {
+ emake DESTDIR="${D}" install
+ dodoc AUTHORS ChangeLog NEWS README
+ use static-libs || rm "${D}"/usr/$(get_libdir)/libinklevel.{a,la}
+}
diff --git a/net-print/libinklevel/libinklevel-0.9.1.ebuild b/net-print/libinklevel/libinklevel-0.9.1.ebuild
new file mode 100644
index 000000000000..28cbfc1574fb
--- /dev/null
+++ b/net-print/libinklevel/libinklevel-0.9.1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools eutils multilib
+
+MY_P="${P/_/}"
+DESCRIPTION="A library to get the ink level of your printer"
+HOMEPAGE="http://libinklevel.sourceforge.net/"
+SRC_URI="mirror://sourceforge/libinklevel/${MY_P}.tar.gz"
+
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+LICENSE="GPL-2"
+IUSE="debug static-libs"
+
+DEPEND=">=sys-libs/libieee1284-0.2.11
+ virtual/libusb:1"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ sed -i -e "/^dist_doc_DATA/d" Makefile.am \
+ || die "Failed to disable installation of docs"
+ eautoreconf
+}
+
+src_configure() {
+ econf $(use_enable debug)
+}
+
+src_install () {
+ emake DESTDIR="${D}" install
+ dodoc AUTHORS ChangeLog NEWS README
+ use static-libs || rm "${D}"/usr/$(get_libdir)/libinklevel.{a,la}
+}
diff --git a/net-print/libinklevel/libinklevel-0.9.2.ebuild b/net-print/libinklevel/libinklevel-0.9.2.ebuild
new file mode 100644
index 000000000000..28cbfc1574fb
--- /dev/null
+++ b/net-print/libinklevel/libinklevel-0.9.2.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools eutils multilib
+
+MY_P="${P/_/}"
+DESCRIPTION="A library to get the ink level of your printer"
+HOMEPAGE="http://libinklevel.sourceforge.net/"
+SRC_URI="mirror://sourceforge/libinklevel/${MY_P}.tar.gz"
+
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+LICENSE="GPL-2"
+IUSE="debug static-libs"
+
+DEPEND=">=sys-libs/libieee1284-0.2.11
+ virtual/libusb:1"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ sed -i -e "/^dist_doc_DATA/d" Makefile.am \
+ || die "Failed to disable installation of docs"
+ eautoreconf
+}
+
+src_configure() {
+ econf $(use_enable debug)
+}
+
+src_install () {
+ emake DESTDIR="${D}" install
+ dodoc AUTHORS ChangeLog NEWS README
+ use static-libs || rm "${D}"/usr/$(get_libdir)/libinklevel.{a,la}
+}
diff --git a/net-print/libinklevel/metadata.xml b/net-print/libinklevel/metadata.xml
new file mode 100644
index 000000000000..d737387c7805
--- /dev/null
+++ b/net-print/libinklevel/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+ <upstream>
+ <remote-id type="sourceforge">libinklevel</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-print/lm1100/Manifest b/net-print/lm1100/Manifest
new file mode 100644
index 000000000000..28d3da0b50d4
--- /dev/null
+++ b/net-print/lm1100/Manifest
@@ -0,0 +1,2 @@
+DIST lm1100.1.0.2a.tar.gz 64316 SHA256 680da0b4a7decef197fa833a57b85e66aa2ec0d67fbcd4345c426fdaca6412fb SHA512 3dda80602af99d93a570e066ca2a121afd93b28b5d28b6f49b52c2c90e288de7b87cefdd5e00bf4edd73439fb6088433fabe884b841befd24183f27a12fcbcb1 WHIRLPOOL b57fc0191d43b66d5c7660c190098d0e09543bfdf86d2f1571ca90f1918dab568489eec437b44468ceeb6fe749b36377484a584a7ce67119177a88a321c630f6
+DIST lm1100maint.tar.gz 708 SHA256 832586bd028e2516f62651bb8e23ced87ea2714831156b1a069231a34971281d SHA512 fe81351705c36dd30e01d402461820ed583d2a8222af8dd81f4dff35c6629592e09fb6dbc0740b9ba0f555de65aeae41c0cb953fbedd0c8620db29b37d797b02 WHIRLPOOL 1d75b48678db43aad319031f6afdd77004a7ee7c9a53101bd4079c3e10255bf163b0776eaf94b076aff3149ea6306929dd65bafd6c2b27f8f174f0fe6980b96e
diff --git a/net-print/lm1100/files/lm1100-1.0.2a-class.patch b/net-print/lm1100/files/lm1100-1.0.2a-class.patch
new file mode 100644
index 000000000000..b771e1bf1449
--- /dev/null
+++ b/net-print/lm1100/files/lm1100-1.0.2a-class.patch
@@ -0,0 +1,24 @@
+diff -ur lm1100.1.0.2a~/PaintLine300c.h lm1100.1.0.2a/PaintLine300c.h
+--- lm1100.1.0.2a~/PaintLine300c.h 2006-06-22 15:14:36.000000000 +0200
++++ lm1100.1.0.2a/PaintLine300c.h 2006-06-22 15:14:55.000000000 +0200
+@@ -32,7 +32,7 @@
+ int size;
+ int x,y;
+
+- friend LexmarkProtocol300c;
++ friend class LexmarkProtocol300c;
+
+ public:
+ void pad(int pad_amount);
+diff -ur lm1100.1.0.2a~/PaintLineBW.h lm1100.1.0.2a/PaintLineBW.h
+--- lm1100.1.0.2a~/PaintLineBW.h 2006-06-22 15:14:36.000000000 +0200
++++ lm1100.1.0.2a/PaintLineBW.h 2006-06-22 15:14:55.000000000 +0200
+@@ -33,7 +33,7 @@
+ int size;
+ int x,y;
+
+- friend LexmarkProtocolBW;
++ friend class LexmarkProtocolBW;
+
+ public:
+ void pad(int pad_amount);
diff --git a/net-print/lm1100/files/lm1100-1.0.2a-fix-compile-gcc-3.4.patch b/net-print/lm1100/files/lm1100-1.0.2a-fix-compile-gcc-3.4.patch
new file mode 100644
index 000000000000..60e1b5c2e7a3
--- /dev/null
+++ b/net-print/lm1100/files/lm1100-1.0.2a-fix-compile-gcc-3.4.patch
@@ -0,0 +1,22 @@
+--- LexmarkProtocol300c.cc.orig 2000-11-21 09:06:22.000000000 +0100
++++ LexmarkProtocol300c.cc 2004-06-16 13:28:04.397060286 +0200
+@@ -69,7 +69,7 @@
+ Jet **LexmarkProtocol300c::createJets(int *numJets, Map *imageMap)
+ {
+ *numJets = 6;
+- class Jet **jets = new (Jet *)[6];
++ class Jet **jets = new Jet*[6];
+ jets[0] = new Jet(0,9,0,imageMap,LEFT_JET,0,8);
+ jets[1] = new Jet(1,0,0,imageMap,RIGHT_JET,0,8);
+ jets[2] = new Jet(2,-9,20,imageMap,LEFT_JET,1,8);
+--- LexmarkProtocolBW.cc.orig 2000-11-21 09:06:22.000000000 +0100
++++ LexmarkProtocolBW.cc 2004-06-16 13:32:51.291509280 +0200
+@@ -68,7 +68,7 @@
+ Jet **LexmarkProtocolBW::createJets(int *numJets, Map *imageMap)
+ {
+ *numJets = 2;
+- class Jet **jets = new (Jet *)[2];
++ class Jet **jets = new Jet*[2];
+ jets[0] = new Jet(0,9,0,imageMap,LEFT_JET,0,28);
+ jets[1] = new Jet(0,0,0,imageMap,RIGHT_JET,0,28);
+
diff --git a/net-print/lm1100/files/lm1100-1.0.2a-fix-compile-gcc-4.1.patch b/net-print/lm1100/files/lm1100-1.0.2a-fix-compile-gcc-4.1.patch
new file mode 100644
index 000000000000..bc797a09a44b
--- /dev/null
+++ b/net-print/lm1100/files/lm1100-1.0.2a-fix-compile-gcc-4.1.patch
@@ -0,0 +1,73 @@
+diff -ru lm1100.1.0.2a~/Jet.h lm1100.1.0.2a/Jet.h
+--- lm1100.1.0.2a~/Jet.h 2006-12-02 18:48:16.000000000 +0100
++++ lm1100.1.0.2a/Jet.h 2006-12-02 18:49:54.000000000 +0100
+@@ -45,7 +45,7 @@
+ Coord imageStart; // start of image from edge of paper
+
+ bool insideImage(int x, int y);
+- bool Jet::needsPainting(int ix, int iy, int bit);
++ bool needsPainting(int ix, int iy, int bit);
+
+ public:
+ /* Range of paper jet covers when head is at 0,0 */
+@@ -54,7 +54,7 @@
+ /* Range of paper jet needs to cover to get the entire image */
+ void getImageRange(Rect *dest);
+ Coord *getPreferredImageStart(Coord *start);
+- int Jet::getPreferredEnd();
++ int getPreferredEnd();
+ bool finished();
+ void setImageStart(Coord *imageStart);
+ void paint(int startX, int endX, int y, class LexmarkProtocol *protocol);
+diff -ru lm1100.1.0.2a~/LinkedList.h lm1100.1.0.2a/LinkedList.h
+--- lm1100.1.0.2a~/LinkedList.h 2006-12-02 18:48:16.000000000 +0100
++++ lm1100.1.0.2a/LinkedList.h 2006-12-02 18:49:54.000000000 +0100
+@@ -26,8 +26,8 @@
+ void *object;
+ LinkedList *next;
+
+- LinkedList::LinkedList();
+- LinkedList::LinkedList(void * object);
++ LinkedList();
++ LinkedList(void * object);
+ };
+
+ #endif
+diff -ru lm1100.1.0.2a~/Map.h lm1100.1.0.2a/Map.h
+--- lm1100.1.0.2a~/Map.h 2006-12-02 18:48:16.000000000 +0100
++++ lm1100.1.0.2a/Map.h 2006-12-02 18:49:54.000000000 +0100
+@@ -41,7 +41,7 @@
+ int height; /* height of map in cells */
+
+ Map(int width, int height, int cellSize);
+- Map::~Map();
++ ~Map();
+
+ void cacheLines(int start, int len);
+ void addAlgorithm(MapAlgorithm *algorithm);
+diff -ru lm1100.1.0.2a~/PPMRaw.h lm1100.1.0.2a/PPMRaw.h
+--- lm1100.1.0.2a~/PPMRaw.h 2006-12-02 18:48:16.000000000 +0100
++++ lm1100.1.0.2a/PPMRaw.h 2006-12-02 18:49:54.000000000 +0100
+@@ -32,7 +32,7 @@
+
+ public:
+ PPMRaw(Reader *reader,bool readMagic);
+- static void PPMRaw::readHeader(int *width, int *height, int *maxval, Reader *reader, bool readMagic);
++ static void readHeader(int *width, int *height, int *maxval, Reader *reader, bool readMagic);
+
+ virtual void getRGB(RGB *rgb, int x, int y);
+
+diff -ru lm1100.1.0.2a~/Rect.h lm1100.1.0.2a/Rect.h
+--- lm1100.1.0.2a~/Rect.h 2006-12-02 18:48:16.000000000 +0100
++++ lm1100.1.0.2a/Rect.h 2006-12-02 18:49:54.000000000 +0100
+@@ -23,8 +23,8 @@
+ class Rect
+ {
+ public:
+- Rect::Rect();
+- Rect::Rect(int x, int y, int width, int height);
++ Rect();
++ Rect(int x, int y, int width, int height);
+
+ int x,y,width,height;
+
diff --git a/net-print/lm1100/files/lm1100-1.0.2a-makefile.patch b/net-print/lm1100/files/lm1100-1.0.2a-makefile.patch
new file mode 100644
index 000000000000..b1f0a2ac4913
--- /dev/null
+++ b/net-print/lm1100/files/lm1100-1.0.2a-makefile.patch
@@ -0,0 +1,35 @@
+--- lm1100.1.0.2a~/Makefile 2001-02-26 01:40:16.000000000 +0100
++++ lm1100.1.0.2a/Makefile 2006-10-23 19:01:57.000000000 +0200
+@@ -7,17 +7,19 @@
+ VERSION=lm1100.1.0.2a
+ TARFILES = $(FILES:%=$(VERSION)/%)
+
+-CC = g++ -O2
++CXX?=g++
++CXXFLAGS?= -O2
++#CC = g++ -O2
+ #CC = g++ -g
+
+ lm1100: $(OBJS)
+- $(CC) -o lm1100 $(OBJS) $(LIBS)
++ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o lm1100 $(OBJS) $(LIBS)
+
+ bufcat: SpongeWriter.o ThreadSafeCircleBuffer.o bufcat.o
+- $(CC) -o bufcat SpongeWriter.o ThreadSafeCircleBuffer.o bufcat.o -lpthread
++ $(CXX) $(CXXFLAGS) -o bufcat SpongeWriter.o ThreadSafeCircleBuffer.o bufcat.o -lpthread
+
+ leak: $(OBJS)
+- $(CC) -o lm1100 $(OBJS) $(LIBS) /usr/local/LeakTracer/LeakTracer.o
++ $(CXX) $(CXXFLAGS) -o lm1100 $(OBJS) $(LIBS) /usr/local/LeakTracer/LeakTracer.o
+
+ tarball: $(FILES)
+ rm $(VERSION);ln -s . $(VERSION);tar -cf - $(TARFILES) | gzip > $(VERSION).tar.gz
+@@ -27,7 +29,7 @@
+ rm *.o
+
+ %.o: %.cc
+- $(CC) $(DEFINES) -c $<
++ $(CXX) $(CXXFLAGS) $(DEFINES) -c $<
+
+ TAGS: $(SRCS)
+ etag $(SRCS)
diff --git a/net-print/lm1100/files/lm1100maint-firmware.patch b/net-print/lm1100/files/lm1100maint-firmware.patch
new file mode 100644
index 000000000000..5c3f4c92ea86
--- /dev/null
+++ b/net-print/lm1100/files/lm1100maint-firmware.patch
@@ -0,0 +1,14 @@
+diff -ur lm1100maint~/lm1100back lm1100maint/lm1100back
+--- lm1100maint~/lm1100back 2006-06-26 19:48:51.000000000 +0200
++++ lm1100maint/lm1100back 2006-06-26 19:50:41.000000000 +0200
+@@ -1,2 +1,2 @@
+ #!/bin/sh
+-dd if=/usr/share/lm1100maint/lexmarkback of=/dev/lp0
++dd if=/usr/share/lm1100/lexmarkback of=/dev/lp0
+diff -ur lm1100maint~/lm1100change lm1100maint/lm1100change
+--- lm1100maint~/lm1100change 2006-06-26 19:48:51.000000000 +0200
++++ lm1100maint/lm1100change 2006-06-26 19:50:55.000000000 +0200
+@@ -1,2 +1,2 @@
+ #!/bin/sh
+-dd if=/usr/share/lm1100maint/lexmarkchange of=/dev/lp0
++dd if=/usr/share/lm1100/lexmarkchange of=/dev/lp0
diff --git a/net-print/lm1100/lm1100-1.0.2a-r1.ebuild b/net-print/lm1100/lm1100-1.0.2a-r1.ebuild
new file mode 100644
index 000000000000..04568a86a2d4
--- /dev/null
+++ b/net-print/lm1100/lm1100-1.0.2a-r1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="The Tim Engler's Lexmark 1100 driver"
+HOMEPAGE="http://www.linuxprinting.org/show_driver.cgi?driver=lm1100"
+MY_P=${P/lm1100-/lm1100.}
+SRC_URI="mirror://gentoo/${MY_P}.tar.gz
+ mirror://gentoo/${PN}maint.tar.gz"
+#http://www.linuxprinting.org/download/printing/${PN}/${PN}maint.tar.gz
+#http://www.linuxprinting.org/download/printing/${PN}/${MY_P}.tar.gz
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+DEPEND=""
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-fix-compile-gcc-3.4.patch"\
+ "${FILESDIR}/${P}-fix-compile-gcc-4.1.patch"\
+ "${FILESDIR}/${P}-class.patch"\
+ "${FILESDIR}/${P}-makefile.patch"
+ cd "${WORKDIR}/${PN}maint" || die
+ epatch "${FILESDIR}/${PN}maint-firmware.patch"
+}
+
+src_compile() {
+ emake CXX="$(tc-getCXX)"
+}
+
+src_install() {
+ dobin lm1100
+ dodoc README RELEASE.txt
+
+ cd "${WORKDIR}/${PN}maint" || die
+ dobin lm1100back lm1100change
+ insinto "/usr/share/${PN}"
+ doins lexmarkback lexmarkchange
+ newdoc README README.maint
+}
diff --git a/net-print/lm1100/metadata.xml b/net-print/lm1100/metadata.xml
new file mode 100644
index 000000000000..ba6569ff247f
--- /dev/null
+++ b/net-print/lm1100/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+</maintainer>
+<longdescription>The Tim Engler's Lexmark 1100 driver</longdescription>
+</pkgmetadata>
diff --git a/net-print/lprng/Manifest b/net-print/lprng/Manifest
new file mode 100644
index 000000000000..15f48e5bfaf5
--- /dev/null
+++ b/net-print/lprng/Manifest
@@ -0,0 +1 @@
+DIST LPRng-3.8.35.tgz 12512453 SHA256 c9909a0b94f8611b8d2faeb1199e292a53b74bf7d16c363b810dce25b7623c37 SHA512 ddebf23087b6c98c89369af26a2e46194c01243490ae47b025afde8ffcf0b1c05b9689702296c1a8aa38c2c38934df094d8cc7e922ab1ac27f51ce19f3676771 WHIRLPOOL f4806cfae0a1f08b7328fd15d4886303c678b6b20f903688cf6a11f3b245ede7ab8f2158fec01946919411858e8cd9405fcebb847b98acd78bea9effae91d415
diff --git a/net-print/lprng/files/lprng-3.8.27-certs.diff b/net-print/lprng/files/lprng-3.8.27-certs.diff
new file mode 100644
index 000000000000..13b9051aea0c
--- /dev/null
+++ b/net-print/lprng/files/lprng-3.8.27-certs.diff
@@ -0,0 +1,38 @@
+--- LPRng-3.8.27/src/lprng_certs.orig 2004-12-20 00:29:21.000000000 +0100
++++ LPRng-3.8.27/src/lprng_certs.sh 2004-12-20 00:33:49.000000000 +0100
+@@ -320,7 +320,9 @@
+ # set default values
+
+
+-CFG=/tmp/$$.sslcfg
++TMPDIR=`mktemp -d -t lprng.XXXXXX` || { echo "$0: Cannot create temporary directory!" >&2 ; exit 1; }
++trap "/bin/rm -rf ${TMPDIR}" 0 1 2 3 13 15
++CFG=$TMPDIR/sslcfg
+
+ OPENSSL=/usr/bin/openssl
+ CA_KEY=//etc/lprng/ssl.ca/ca.key
+@@ -508,14 +510,14 @@
+ shift
+ if [ "$1" = "" ] ; then usage; fi;
+ if [ ! -f "$1" ] ; then useage; fi;
+- sed -n -e '/BEGIN.*PRIVATE KEY/,/END.*PRIVATE KEY/p' $1 >/tmp/$$.key
+- sed -e '/BEGIN.*PRIVATE KEY/,/END.*PRIVATE KEY/d' $1 >/tmp/$$.crt
+- STEP="" encrypt /tmp/$$.key
++ sed -n -e '/BEGIN.*PRIVATE KEY/,/END.*PRIVATE KEY/p' $1 >$TMPDIR/key
++ sed -e '/BEGIN.*PRIVATE KEY/,/END.*PRIVATE KEY/d' $1 >$TMPDIR/crt
++ STEP="" encrypt $TMPDIR/key
+ status=$?
+ echo STATUS $status
+ if [ $status = 0 ] ; then
+ mv $1 $1.orig
+- cat /tmp/$$.crt /tmp/$$.key >$1
++ cat $TMPDIR/crt $TMPDIR/key >$1
+ fi
+ ;;
+
+@@ -845,5 +847,4 @@
+ exit 1
+ ;;
+ esac
+-rm -f ${CFG}
+ exit $RET
diff --git a/net-print/lprng/files/lprng-3.8.28-krb.diff b/net-print/lprng/files/lprng-3.8.28-krb.diff
new file mode 100644
index 000000000000..76381e560d06
--- /dev/null
+++ b/net-print/lprng/files/lprng-3.8.28-krb.diff
@@ -0,0 +1,11 @@
+--- LPRng-3.8.28/src/common/krb5_auth.c.org 2004-09-24 22:19:57.000000000 +0200
++++ LPRng-3.8.28/src/common/krb5_auth.c 2006-10-13 09:19:44.000000000 +0200
+@@ -922,7 +922,7 @@
+ nstored = 0;
+ }
+
+- if ((cc = Read_fd_len_timeout(transfer_timeout, fd, len_buf, 4)) != 4) {
++ if ((cc = Read_fd_len_timeout(transfer_timeout, fd, (char*)len_buf, 4)) != 4) {
+ /* XXX can't read enough, pipe must have closed */
+ return(0);
+ }
diff --git a/net-print/lprng/files/lprng-3.8.28-lpq.diff b/net-print/lprng/files/lprng-3.8.28-lpq.diff
new file mode 100644
index 000000000000..51fc500b34e7
--- /dev/null
+++ b/net-print/lprng/files/lprng-3.8.28-lpq.diff
@@ -0,0 +1,11 @@
+--- LPRng-3.8.28/src/common/lpq.c.orig 2004-09-24 22:19:58.000000000 +0200
++++ LPRng-3.8.28/src/common/lpq.c 2006-06-26 15:42:57.000000000 +0200
+@@ -449,7 +449,7 @@
+ if( (pid = dofork(0)) == 0 ){
+ setuid( OriginalRUID );
+ close_on_exec(3);
+- execl(CLEAR,0);
++ execl(CLEAR, CLEAR, (char*) NULL);
+ exit(1);
+ } else if( pid < 0 ){
+ LOGERR_DIE(LOG_ERR) _("fork() failed") );
diff --git a/net-print/lprng/files/lprng-3.8.28-make.diff b/net-print/lprng/files/lprng-3.8.28-make.diff
new file mode 100644
index 000000000000..66c742dd994f
--- /dev/null
+++ b/net-print/lprng/files/lprng-3.8.28-make.diff
@@ -0,0 +1,11 @@
+--- LPRng-3.8.28/Makefile.in.orig 2004-09-24 22:19:52.000000000 +0200
++++ LPRng-3.8.28/Makefile.in 2006-06-27 09:26:13.000000000 +0200
+@@ -42,7 +42,7 @@
+ LPD_CONF_PATH=\"@LPD_CONF_PATH@\"
+ PRINTCAP_PATH=\"@PRINTCAP_PATH@\"
+ LPD_PATH=\"@LPD_DIR@/lpd\"
+-SHELL="@SHELL@"
++SHELL=@SHELL@
+ LOCKFILE=\"@LOCKFILE@\"
+ CONFIG_SUBDIR="@CONFIG_SUBDIR@"
+ PSHOWALL="@PSHOWALL@"
diff --git a/net-print/lprng/files/lprng-init b/net-print/lprng/files/lprng-init
new file mode 100644
index 000000000000..992e7e7eb4a3
--- /dev/null
+++ b/net-print/lprng/files/lprng-init
@@ -0,0 +1,39 @@
+#!/sbin/runscript
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+depend() {
+ need net
+}
+
+checkconfig() {
+ if [ ! -e /etc/lprng/lpd.conf ] ; then
+ eerror "You need an /etc/lprng/lpd.conf file first"
+ eerror "There is a sample in /usr/share/doc/LPRng"
+ return 1
+ fi
+ if [ ! -e /etc/lprng/printcap ] ; then
+ eerror "You need an /etc/lprng/printcap file first"
+ eerror "There is a sample in /usr/share/doc/LPRng"
+ return 1
+ fi
+ if [ ! -e /etc/lprng/lpd.perms ] ; then
+ eerror "You need an /etc/lprng/lpd.perms file first"
+ eerror "There is a sample in /usr/share/doc/LPRng"
+ return 1
+ fi
+}
+
+start() {
+ checkconfig || return 1
+ ebegin "Starting lpd"
+ start-stop-daemon --start --pidfile "/var/run/lpd.515" --quiet --exec /usr/sbin/lpd
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping lpd"
+ start-stop-daemon --stop --pidfile "/var/run/lpd.515" --quiet --exec /usr/sbin/lpd
+ eend $?
+}
diff --git a/net-print/lprng/files/printcap b/net-print/lprng/files/printcap
new file mode 100644
index 000000000000..500aec20c21f
--- /dev/null
+++ b/net-print/lprng/files/printcap
@@ -0,0 +1,24 @@
+# /etc/printcap: printer capability database.
+# $Id$
+#
+# You can use the filter entries df, tf, cf, gf etc. for your
+# own filters. See the printcap(5) manpage for more details.
+
+lp|Generic dot-matrix printer entry
+ :lp=/dev/lp1
+ :sd=/var/spool/lpd/lp
+ :af=/var/log/lp-acct
+ :lf=/var/log/lp-errs
+ :pl#66
+ :pw#80
+ :pc#150
+ :mx#0
+ :sh
+
+# rlp|Remote printer entry
+# :lp=
+# :rm=remotehost
+# :rp=remoteprinter
+# :sd=/var/spool/lpd/remote
+# :mx#0
+# :sh
diff --git a/net-print/lprng/lprng-3.8.35-r2.ebuild b/net-print/lprng/lprng-3.8.35-r2.ebuild
new file mode 100644
index 000000000000..4ad29b2ba634
--- /dev/null
+++ b/net-print/lprng/lprng-3.8.35-r2.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils flag-o-matic
+
+MY_PN=LPRng
+DESCRIPTION="Extended implementation of the Berkeley LPR print spooler"
+HOMEPAGE="http://www.lprng.com/"
+SRC_URI="ftp://ftp.lprng.com/pub/${MY_PN}/${MY_PN}/${MY_PN}-${PV}.tgz"
+
+LICENSE="|| ( GPL-2 Artistic )"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sh sparc x86"
+IUSE="foomaticdb kerberos nls ssl"
+
+RDEPEND="sys-process/procps
+ ssl? ( dev-libs/openssl )
+ foomaticdb? ( net-print/foomatic-filters net-print/foomatic-db )
+ !>=net-print/cups-1.6.2-r4[-lprng-compat]
+ !<net-print/cups-1.6.2-r4"
+DEPEND="${RDEPEND}
+ nls? ( sys-devel/gettext )
+ kerberos? ( app-crypt/mit-krb5 )"
+
+S=${WORKDIR}/${MY_PN}-${PV}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-3.8.27-certs.diff
+ epatch "${FILESDIR}"/${PN}-3.8.28-make.diff
+ epatch "${FILESDIR}"/${PN}-3.8.28-krb.diff
+}
+
+src_configure() {
+ # wont compile with -O3, needs -O2
+ replace-flags -O[3-9] -O2
+
+ econf \
+ $(use_enable nls) \
+ $(use_enable kerberos) \
+ $(use_enable ssl) \
+ --disable-setuid \
+ --disable-werror \
+ --with-userid=lp \
+ --with-groupid=lp \
+ --with-lpd_conf_path=/etc/lprng/lpd.conf \
+ --with-lpd_perms_path=/etc/lprng/lpd.perms \
+ --libexecdir=/usr/libexec/lprng \
+ --sysconfdir=/etc/lprng \
+ --disable-strip
+}
+
+src_compile() {
+ # bash is necessary due to bashisms in libtool
+ emake -j1 SHELL=/bin/bash
+}
+
+src_install() {
+ dodir /var/spool/lpd
+ diropts -m 700 -o lp -g lp
+ dodir /var/spool/lpd/lp
+
+ emake install \
+ DESTDIR="${D}" \
+ POSTINSTALL="NO" \
+ gnulocaledir="${D}"/usr/share/locale
+
+ dodoc CHANGES README VERSION "${FILESDIR}"/printcap lpd.conf lpd.perms
+
+ insinto /etc/lprng
+ doins "${FILESDIR}"/printcap lpd.conf lpd.perms
+ dosym /etc/lprng/printcap /etc/printcap
+ newinitd "${FILESDIR}"/lprng-init lprng
+}
+
+pkg_postinst() {
+ einfo "If printing does not work, try 'checkpc'/'checkpc -f'"
+}
diff --git a/net-print/lprng/metadata.xml b/net-print/lprng/metadata.xml
new file mode 100644
index 000000000000..b04e4cfadbc6
--- /dev/null
+++ b/net-print/lprng/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+ <maintainer>
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/net-print/magicfilter/Manifest b/net-print/magicfilter/Manifest
new file mode 100644
index 000000000000..637f31191cad
--- /dev/null
+++ b/net-print/magicfilter/Manifest
@@ -0,0 +1 @@
+DIST magicfilter-2.3.h.tar.gz 161929 RMD160 af36ec7731d1431ed4ac1ff1b048b62a7e31a459 SHA1 94e2f5abbfa208f994b729d8cebc2a2a91c71186 SHA256 8d6a3e3e68a16aa43682cdd77e8a9d28635eef4ea5e8dcf558e9a6fb88f8642c
diff --git a/net-print/magicfilter/files/magicfilter-2.3d-glibc-2.10.patch b/net-print/magicfilter/files/magicfilter-2.3d-glibc-2.10.patch
new file mode 100644
index 000000000000..eea064501cad
--- /dev/null
+++ b/net-print/magicfilter/files/magicfilter-2.3d-glibc-2.10.patch
@@ -0,0 +1,100 @@
+--- fe.c
++++ fe.c
+@@ -128,7 +128,7 @@
+
+ /* read rules
+ */
+- while ( (r = getline(f)) != 0) {
++ while ( (r = get_line(f)) != 0) {
+ rulecount++;
+ if (tail) {
+ tail->next = r;
+--- getline.c
++++ getline.c
+@@ -27,7 +27,7 @@
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+ /*
+- * getline() picks up a magicfilter rule line and passes it back to magicfilter
++ * get_line() picks up a magicfilter rule line and passes it back to magicfilter
+ *
+ * rules are:
+ *
+@@ -172,10 +172,10 @@
+
+
+ /*
+- * getline() gets a rule off the input stream
++ * get_line() gets a rule off the input stream
+ */
+ struct rule *
+-getline(FILE *input)
++get_line(FILE *input)
+ {
+ static char *bfr = 0; /* a buffer for reading lines into */
+ static int buflen = 0; /* size of that buffer */
+@@ -189,13 +189,13 @@
+ /* initialize the line buffer the first time in
+ */
+ if ( (bfr = malloc(buflen=80)) == 0) {
+- perror("getline::malloc");
++ perror("get_line::malloc");
+ exit(1);
+ }
+ }
+
+ if ( (r = calloc(1, sizeof *r)) == 0) {
+- perror("getline::calloc");
++ perror("get_line::calloc");
+ exit(1);
+ }
+
+@@ -240,7 +240,7 @@
+ }
+
+ if ( (r->pattern = strdup(q)) == 0) {
+- perror("getline::strdup");
++ perror("get_line::strdup");
+ exit(1);
+ }
+
+@@ -289,7 +289,7 @@
+
+ if (hint)
+ if ( (r->hint = strdup(hint)) == 0) {
+- perror("getline::strdup");
++ perror("get_line::strdup");
+ exit(1);
+ }
+
+@@ -302,11 +302,11 @@
+ while ( (q = getarg(&p)) != 0) {
+ r->argv = realloc(r->argv, (3 + r->argc) * sizeof r->argv[0]);
+ if (r->argv == 0) {
+- perror("getline::realloc");
++ perror("get_line::realloc");
+ exit(1);
+ }
+ if ( (r->argv[r->argc++] = strdup(q)) == 0) {
+- perror("getline::strdup");
++ perror("get_line::strdup");
+ exit(1);
+ }
+ }
+@@ -330,4 +330,4 @@
+ }
+ ++ruleno;
+ return r;
+-} /* getline */
++} /* get_line */
+--- rule.h
++++ rule.h
+@@ -55,7 +55,7 @@
+ struct rule *next; /* next rule in the chain */
+ } ;
+
+-extern struct rule *getline(FILE *);
++extern struct rule *get_line(FILE *);
+ extern struct rule *rules;
+ char * action_p(enum rule_action);
+
diff --git a/net-print/magicfilter/files/magicfilter-2.3h-configure.patch b/net-print/magicfilter/files/magicfilter-2.3h-configure.patch
new file mode 100644
index 000000000000..0d89b4d04eb5
--- /dev/null
+++ b/net-print/magicfilter/files/magicfilter-2.3h-configure.patch
@@ -0,0 +1,59 @@
+--- configure.sh
++++ configure.sh
+@@ -423,44 +423,12 @@ EOF
+ TLOGN " ($AC_CC)"
+ if [ $status -eq 0 ]; then
+ TLOG " ok"
+-
+- # check that the CFLAGS and LDFLAGS aren't bogus
+-
+- unset AC_CFLAGS AC_LDFLAGS
+-
+- if [ "$CFLAGS" ]; then
+- test "$CFLAGS" && echo "validating CFLAGS=${CFLAGS}"
+- if $AC_CC $CFLAGS -o /tmp/ngc$$.o /tmp/ngc$$.c ; then
+- AC_CFLAGS=${CFLAGS:-"-g"}
+- test "$CFLAGS" && echo "CFLAGS=\"${CFLAGS}\" are okay"
+- elif [ "$CFLAGS" ]; then
+- echo "ignoring bogus CFLAGS=\"${CFLAGS}\""
+- fi
+- else
+- AC_CFLAGS=-g
+- fi
+- if [ "$LDFLAGS" ]; then
+- test "$LDFLAGS" && echo "validating LDFLAGS=${LDFLAGS}"
+- if $AC_CC $LDFLAGS -o /tmp/ngc$$ /tmp/ngc$$.o; then
+- AC_LDFLAGS=${LDFLAGS:-"-g"}
+- test "$LDFLAGS" && TLOG "LDFLAGS=\"${LDFLAGS}\" are okay"
+- elif [ "$LDFLAGS" ]; then
+- TLOG "ignoring bogus LDFLAGS=\"${LDFLAGS}\""
+- fi
+- else
+- AC_LDFLAGS=${CFLAGS:-"-g"}
+- fi
+- AC_SUB 'CFLAGS' "$AC_CFLAGS"
+- AC_SUB 'LDFLAGS' "$AC_LDFLAGS"
+- else
+- AC_SUB 'CFLAGS' ''
+- AC_SUB 'LDFLAGS' ''
+- AC_FAIL " does not compile code properly"
+ fi
+
+- AC_SUB 'CC' "$AC_CC"
++ AC_SUB 'CFLAGS' "$CFLAGS"
++ AC_SUB 'LDFLAGS' "$LDFLAGS"
+
+- rm -f /tmp/ngc$$ /tmp/ngc$$.c /tmp/ngc$$.o
++ AC_SUB 'CC' "$AC_CC"
+
+ return $status
+ }
+@@ -896,7 +864,7 @@ AC_PROG_INSTALL () {
+ fi
+
+ AC_SUB 'INSTALL' "$PROG_INSTALL"
+- AC_SUB 'INSTALL_PROGRAM' "$PROG_INSTALL -s -m 755"
++ AC_SUB 'INSTALL_PROGRAM' "$PROG_INSTALL -m 755"
+ AC_SUB 'INSTALL_DATA' "$PROG_INSTALL -m 444"
+
+ # finally build a little directory installer
diff --git a/net-print/magicfilter/files/magicfilter-2.3h-makefile.patch b/net-print/magicfilter/files/magicfilter-2.3h-makefile.patch
new file mode 100644
index 000000000000..59c2cc15af91
--- /dev/null
+++ b/net-print/magicfilter/files/magicfilter-2.3h-makefile.patch
@@ -0,0 +1,75 @@
+--- Makefile.in
++++ Makefile.in
+@@ -17,7 +17,7 @@ libmagic @LIBMAGIC@:
+ @MAKE_MAGIC@ all
+
+ textonly: contrib/textonly.c
+- $(CC) $(CFLAGS) -o textonly $<
++ $(CC) $(CFLAGS) $(LDFLAGS) -o textonly $<
+
+ mpp: magic.m4 mkmpp
+ @srcdir@/mkmpp magic.m4
+@@ -43,47 +43,46 @@ magic.c: magic.m4 mkmagic config.h
+ cfmagic: file/magic
+ @MAKE_MAGIC@ magic
+
+-commoninstall: textonly @CFMAGIC@
+- @INSTALL_DIR@ $(prefix)/@exedir@
+- @INSTALL_DIR@ $(prefix)/@mandir@/man8
+- @INSTALL_DIR@ $(prefix)/@mandir@/man5
+- @INSTALL_DIR@ $(prefix)/@filterdir@
+- @INSTALL_MAGIC@ -m 444 file/magic $(prefix)/@MAGIC@
+- @INSTALL_PROGRAM@ -m 511 textonly $(prefix)/@filterdir@
++commoninstall: textonly
++ @INSTALL_DIR@ $(DESTDIR)$(prefix)/@exedir@
++ @INSTALL_DIR@ $(DESTDIR)$(prefix)/@mandir@/man8
++ @INSTALL_DIR@ $(DESTDIR)$(prefix)/@mandir@/man5
++ @INSTALL_DIR@ $(DESTDIR)$(prefix)/@filterdir@
++ @INSTALL_PROGRAM@ textonly $(DESTDIR)$(prefix)/@filterdir@
+
+ install: @DO_WHAT@
+
+ install-bin-t: traditional commoninstall
+- @INSTALL_PROGRAM@ -m 511 traditional $(prefix)/@exedir@/magicfilter-t
++ @INSTALL_PROGRAM@ traditional $(DESTDIR)$(prefix)/@exedir@/magicfilter-t
+
+ install-bin: magicfilter commoninstall
+- @INSTALL_PROGRAM@ -m 511 magicfilter $(prefix)/@exedir@
++ @INSTALL_PROGRAM@ magicfilter $(DESTDIR)$(prefix)/@exedir@
+
+ install-data-t: traditional commoninstall
+ @srcdir@/mkmpp
+ for x in @srcdir@/filters/*.def;do \
+- ./mpp @exedir@/magicfilter-t $$x > $(prefix)/@filterdir@/`basename $$x .def`-filter; \
+- chmod +x $(prefix)/@filterdir@/`basename $$x .def`-filter; \
++ ./mpp @exedir@/magicfilter-t $$x > $(DESTDIR)$(prefix)/@filterdir@/`basename $$x .def`-filter; \
++ chmod +x $(DESTDIR)$(prefix)/@filterdir@/`basename $$x .def`-filter; \
+ done
+ @rm -f mpp
+
+ install-data: magicfilter commoninstall
+ for x in @srcdir@/filters/*.def;do \
+- sed -e 's,@MAGIC''FILTER@,@exedir@/magicfilter,' < $$x > $(prefix)/@filterdir@/`basename $$x .def`; \
+- chmod +x $(prefix)/@filterdir@/`basename $$x .def`; \
++ sed -e 's,@MAGIC''FILTER@,@exedir@/magicfilter,' < $$x > $(DESTDIR)$(prefix)/@filterdir@/`basename $$x .def`; \
++ chmod +x $(DESTDIR)$(prefix)/@filterdir@/`basename $$x .def`; \
+ done
+
+ install-man: VERSION commoninstall
+ @SED@ -n -e 's/&PROGRAM&/magicfilter/g' -e 's/^MAN //p' -e @LPD_OPTS@ < magicfilter.8templ > $$$$; \
+- @INSTALL_DATA@ -m 444 $$$$ $(prefix)/@mandir@/man8/magicfilter.8; \
++ @INSTALL_DATA@ $$$$ $(DESTDIR)$(prefix)/@mandir@/man8/magicfilter.8; \
+ rm -f $$$$
+- @INSTALL_DATA@ -m 444 magicfilter.5 $(prefix)/@mandir@/man5
++ @INSTALL_DATA@ magicfilter.5 $(DESTDIR)$(prefix)/@mandir@/man5
+
+ install-man-t: VERSION commoninstall
+ @SED@ -n -e 's/&PROGRAM&/magicfilter-t/g' -e 's/^MAN //p' -e 's/^TRAD//p' -e @LPD_OPTS@ < magicfilter.8templ > $$$$; \
+- @INSTALL_DATA@ -m 444 $$$$ $(prefix)/@mandir@/man8/magicfilter-t.8; \
++ @INSTALL_DATA@ $$$$ $(DESTDIR)$(prefix)/@mandir@/man8/magicfilter-t.8; \
+ rm -f $$$$
+- @INSTALL_DATA@ -m 444 magicfilter-t.5 $(prefix)/@mandir@/man5
++ @INSTALL_DATA@ magicfilter-t.5 $(DESTDIR)$(prefix)/@mandir@/man5
+
+ install-traditional: install-man-t install-bin-t install-data-t
+
diff --git a/net-print/magicfilter/magicfilter-2.3h.ebuild b/net-print/magicfilter/magicfilter-2.3h.ebuild
new file mode 100644
index 000000000000..a3a4874cdaf4
--- /dev/null
+++ b/net-print/magicfilter/magicfilter-2.3h.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit eutils toolchain-funcs
+
+MY_P=${PN}-2.3.h
+
+DESCRIPTION="Customizable, extensible automatic printer filter"
+HOMEPAGE="http://www.pell.portland.or.us/~orc/Code/magicfilter/"
+SRC_URI="http://www.pell.portland.or.us/~orc/Code/magicfilter/${MY_P}.tar.gz"
+
+LICENSE="BSD GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="lprng-failsafe"
+
+DEPEND="app-text/ghostscript-gpl"
+RDEPEND="${DEPEND}
+ lprng-failsafe? ( net-print/lprng )"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${PN}-2.3d-glibc-2.10.patch \
+ "${FILESDIR}"/${PN}-2.3h-configure.patch \
+ "${FILESDIR}"/${PN}-2.3h-makefile.patch
+}
+
+src_configure() {
+ local myconf
+ use lprng-failsafe && myconf="--with-lprng"
+
+ tc-export CC
+ export AC_CPP_PROG="$(tc-getCPP)"
+
+ ./configure.sh \
+ --prefix=/usr \
+ --mandir=/usr/share/man \
+ --filterdir=/usr/share/magicfilter/filters \
+ ${myconf} || die
+}
diff --git a/net-print/magicfilter/metadata.xml b/net-print/magicfilter/metadata.xml
new file mode 100644
index 000000000000..865a3c330b0e
--- /dev/null
+++ b/net-print/magicfilter/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+ <use>
+ <flag name="lprng-failsafe">Refuse options for compability with certain LPRng versions.</flag>
+ </use>
+</pkgmetadata>
diff --git a/net-print/metadata.xml b/net-print/metadata.xml
new file mode 100644
index 000000000000..e4bb8b2933c1
--- /dev/null
+++ b/net-print/metadata.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<catmetadata>
+ <longdescription lang="en">
+ The net-print category contains network printing packages.
+ </longdescription>
+ <longdescription lang="de">
+ Die Kategorie net-print enthält Software für das Drucken in Netzwerken.
+ </longdescription>
+ <longdescription lang="es">
+ La categoría net-print contiene programas relacionadas con impresion.
+ </longdescription>
+ <longdescription lang="ja">
+ net-printカテゴリーにはネットワーク・プリンティングのパッケージが含まれています。
+ </longdescription>
+ <longdescription lang="nl">
+ De net-print categorie bevat applicaties voor netwerkprinten.
+ </longdescription>
+ <longdescription lang="vi">
+ Nhóm net-print chứa các phần mềm in ấn qua mạng.
+ </longdescription>
+ <longdescription lang="it">
+ La categoria net-print contiene programmi per la stampa via rete.
+ </longdescription>
+ <longdescription lang="pt">
+ A categoria net-print contém pacotes relacionados com impressão
+ de rede.
+ </longdescription>
+ <longdescription lang="pl">
+ Kategoria net-print zawiera programy do drukowania w sieci.
+ </longdescription>
+</catmetadata>
+
diff --git a/net-print/mtink/Manifest b/net-print/mtink/Manifest
new file mode 100644
index 000000000000..5fdd9be523ab
--- /dev/null
+++ b/net-print/mtink/Manifest
@@ -0,0 +1 @@
+DIST mtink-1.0.16.tar.gz 916315 SHA256 187e8d145e818b4b56be203403f5fe28c02f899d30d92c58e82bcef311555ba2
diff --git a/net-print/mtink/files/mtink-1.0.16-options.patch b/net-print/mtink/files/mtink-1.0.16-options.patch
new file mode 100644
index 000000000000..c173a4c762c1
--- /dev/null
+++ b/net-print/mtink/files/mtink-1.0.16-options.patch
@@ -0,0 +1,39 @@
+diff -ruN mtink-1.0.16.orig/Makefile.ORG mtink-1.0.16/Makefile.ORG
+--- mtink-1.0.16.orig/Makefile.ORG 2007-08-28 12:52:30.000000000 +0200
++++ mtink-1.0.16/Makefile.ORG 2011-06-05 21:29:23.000000000 +0200
+@@ -4,7 +4,7 @@
+ setUid=1
+ gimpVersion=
+
+-DBG = -s -O
++DBG =
+
+ # comment this out for Solaris
+
+@@ -235,7 +235,7 @@
+
+ ttink: $(TTYOBJ) $(SRCDIR)/d4lib.h $(SRCDIR)/cmd.h $(SRCDIR)/mtink.h $(SRCDIR)/model.h $(SRCDIR)/version.h Makefile
+ @echo Link ttink
+- @$(CC) -o ttink $(TTYOBJ) $(CFLAGS) $(MTINK_CFLAGS) $(RDTIMEOUT) $(DEVICE) $(WRTIMEOUT) $(DEBUG) $(KERNEL_USB_BUG) $(MACOSLDFLG) -DWITH_X=0
++ @$(CC) -o ttink $(LDFLAGS) $(TTYOBJ) $(CFLAGS) $(MTINK_CFLAGS) $(RDTIMEOUT) $(DEVICE) $(WRTIMEOUT) $(DEBUG) $(KERNEL_USB_BUG) $(MACOSLDFLG) -DWITH_X=0
+
+ ############# PLUG-IN #######################
+ gimp-mtink: $(SRCDIR)/gimp-mtink.c Makefile
+@@ -257,7 +257,7 @@
+
+ mtinkd: $(SVR_OBJ) Makefile
+ @echo Link mtinkd
+- @$(CC) -o mtinkd $(SVR_OBJ) $(CFLAGS) $(MTINK_CFLAGS) $(MACOSLDFLG)
++ @$(CC) -o mtinkd $(LDFLAGS) $(SVR_OBJ) $(CFLAGS) $(MTINK_CFLAGS) $(MACOSLDFLG)
+
+ ########### Chooser ##############
+
+@@ -269,7 +269,7 @@
+
+ $(DETDIR)/askPrinter: $(DETDIR)/askPrinter.c
+ @echo Compile and link askPrinter.c
+- @$(CC) -o $(DETDIR)/askPrinter $(DETDIR)/askPrinter.c -I. -I$(DETDIR)
++ @$(CC) -o $(DETDIR)/askPrinter $(LDFLAGS) $(DETDIR)/askPrinter.c -I. -I$(DETDIR)
+
+ ########### utilities ######################
+
diff --git a/net-print/mtink/files/mtink-1.0.16-overflow.patch b/net-print/mtink/files/mtink-1.0.16-overflow.patch
new file mode 100644
index 000000000000..181ab0d789d4
--- /dev/null
+++ b/net-print/mtink/files/mtink-1.0.16-overflow.patch
@@ -0,0 +1,11 @@
+--- server/mtinkd.c.orig 2012-01-15 13:03:41.000000000 +0000
++++ server/mtinkd.c 2012-01-15 13:03:58.000000000 +0000
+@@ -244,7 +244,7 @@
+ /* look for pid into /var/run/mtink(<fifo> */
+ if ( (fp = fopen(runFile,"r")) )
+ {
+- if ( fgets(ibuf, sizeof(buf), fp) )
++ if ( fgets(ibuf, sizeof(ibuf), fp) )
+ {
+ if ( (pid = atoi(ibuf)) )
+ {
diff --git a/net-print/mtink/files/mtinkd.confd b/net-print/mtink/files/mtinkd.confd
new file mode 100644
index 000000000000..9facf032790d
--- /dev/null
+++ b/net-print/mtink/files/mtinkd.confd
@@ -0,0 +1,15 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# define the device file, adapt this
+#DEV_FILE=/dev/lp0
+DEV_FILE=/dev/usb/lp0
+
+# Special options, adapt this
+# add name of printer
+NAME=
+
+# use the first line for USB printers, the second for parallel port printers
+SPEC="-name $NAME -usbbase /dev/usb/lp"
+#SPEC="-name $NAME"
diff --git a/net-print/mtink/files/mtinkd.rc b/net-print/mtink/files/mtinkd.rc
new file mode 100644
index 000000000000..f881017bf5cf
--- /dev/null
+++ b/net-print/mtink/files/mtinkd.rc
@@ -0,0 +1,20 @@
+#!/sbin/runscript
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+depend() {
+ use cups
+}
+
+start() {
+ ebegin "Starting mtinkd"
+ /usr/sbin/mtinkd start ${DEV_FILE} ${SPEC}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping mtinkd"
+ /usr/sbin/mtinkd stop ${DEV_FILE} ${SPEC}
+ eend $?
+}
diff --git a/net-print/mtink/metadata.xml b/net-print/mtink/metadata.xml
new file mode 100644
index 000000000000..403e2746cbe2
--- /dev/null
+++ b/net-print/mtink/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>printing</herd>
+<herd>proxy-maintainers</herd>
+<maintainer><email>SebastianLuther@gmx.de</email></maintainer>
+</pkgmetadata>
diff --git a/net-print/mtink/mtink-1.0.16-r1.ebuild b/net-print/mtink/mtink-1.0.16-r1.ebuild
new file mode 100644
index 000000000000..4aef896823df
--- /dev/null
+++ b/net-print/mtink/mtink-1.0.16-r1.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit eutils base
+
+DESCRIPTION="mtink is a status monitor and inkjet cartridge changer for some Epson printers"
+HOMEPAGE="http://xwtools.automatix.de/"
+SRC_URI="http://xwtools.automatix.de/files/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc ~sparc x86"
+IUSE="cups doc X"
+
+DEPEND="X? ( x11-libs/libX11
+ x11-libs/libXpm
+ x11-libs/libXt
+ >=x11-libs/motif-2.3:0 )
+ cups? ( net-print/cups )
+ virtual/libusb:0"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${P}-options.patch"
+ "${FILESDIR}/${P}-overflow.patch"
+)
+
+src_configure() {
+ ./Configure || die
+}
+
+src_compile() {
+ local mytargets
+ mytargets="ttink detect/askPrinter mtinkd"
+
+ if use X; then
+ mytargets="${mytargets} mtink mtinkc";
+ fi
+
+ emake ${mytargets}
+}
+
+src_install() {
+ dobin ttink detect/askPrinter
+
+ if use X; then
+ dobin mtinkc mtink
+ fi
+
+ dosbin mtinkd
+
+ newinitd "${FILESDIR}"/mtinkd.rc mtinkd
+ newconfd "${FILESDIR}"/mtinkd.confd mtinkd
+
+ if use cups; then
+ exeinto /usr/lib/cups/backend
+ doexe etc/mtink-cups
+ fi
+
+ dodoc README CHANGE.LOG
+ use doc && \
+ dohtml html/*.gif html/*.html
+}
+
+pkg_postinst() {
+ # see #70310
+ chmod 700 /var/mtink /var/run/mtink 2>/dev/null
+
+ elog
+ elog "mtink needs correct permissions to access printer device."
+ elog "To do this you either need to run the following chmod command:"
+ elog "chmod 666 /dev/<device>"
+ elog "or set the suid bit on mtink, mtinkc and ttink in /usr/bin"
+ elog
+}
diff --git a/net-print/npadmin/Manifest b/net-print/npadmin/Manifest
new file mode 100644
index 000000000000..fb3363e38068
--- /dev/null
+++ b/net-print/npadmin/Manifest
@@ -0,0 +1 @@
+DIST npadmin-0.8.7.tar.gz 104209 SHA256 829056157c5244e200af96d323fc2436bff53d353c671de8b1e7d7e0bca5ee1b
diff --git a/net-print/npadmin/files/npadmin-0.8.7-stdlib.patch b/net-print/npadmin/files/npadmin-0.8.7-stdlib.patch
new file mode 100644
index 000000000000..976cc9c191a2
--- /dev/null
+++ b/net-print/npadmin/files/npadmin-0.8.7-stdlib.patch
@@ -0,0 +1,10 @@
+--- npadmin-0.8.7/snmpsock.h 1998-12-31 04:04:42.000000000 +0100
++++ npadmin-0.8.7-patched/snmpsock.h 2005-02-23 15:37:41.082565000 +0100
+@@ -2,6 +2,7 @@
+ #define __SNMPSOCK_H_
+
+ #include <pthread.h>
++#include <stdlib.h>
+
+ class SNMP_socket {
+ int sock;
diff --git a/net-print/npadmin/metadata.xml b/net-print/npadmin/metadata.xml
new file mode 100644
index 000000000000..911d11367046
--- /dev/null
+++ b/net-print/npadmin/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+ <upstream>
+ <remote-id type="sourceforge">npadmin</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-print/npadmin/npadmin-0.8.7.ebuild b/net-print/npadmin/npadmin-0.8.7.ebuild
new file mode 100644
index 000000000000..0518079540fc
--- /dev/null
+++ b/net-print/npadmin/npadmin-0.8.7.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils
+DESCRIPTION="Network printer command-line adminstration tool"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+HOMEPAGE="http://npadmin.sourceforge.net/"
+# this does NOT link against SNMP
+DEPEND=""
+KEYWORDS="x86 ~amd64 ~ppc"
+IUSE=""
+LICENSE="GPL-2"
+SLOT="0"
+
+src_unpack() {
+ unpack ${A}
+ EPATCH_OPTS="-p1 -d ${S}" epatch ${FILESDIR}/${P}-stdlib.patch
+}
+
+src_compile() {
+ econf || die
+ emake || die "Make failed."
+}
+
+src_install() {
+ dobin npadmin
+ doman npadmin.1
+ dodoc README AUTHORS ChangeLog INSTALL NEWS README TODO
+}
diff --git a/net-print/pkpgcounter/Manifest b/net-print/pkpgcounter/Manifest
new file mode 100644
index 000000000000..c470e79a25b0
--- /dev/null
+++ b/net-print/pkpgcounter/Manifest
@@ -0,0 +1 @@
+DIST pkpgcounter-3.50.tar.gz 195579 SHA256 cbeea2c571682d5fa6ac1ffeec36d3495dbe65665581f2f0ae6255dbd7d62118 SHA512 d0c597cacc6b315faf002677ff456bd3dcb4fe8337b407e027b0edb6b27fd0e23da69fed6d148d7f5e28c2b91f7207d63779307e5e284cc714954dcb7ebe6346 WHIRLPOOL 500a0521b766366cedca30cebf402da16bcc5fbc2c52f3d27a5a984a15d8e004d1e552dd7dde22723bc8b3d955686fe04ba0bf0418501cc35b2276c5d69f2df0
diff --git a/net-print/pkpgcounter/metadata.xml b/net-print/pkpgcounter/metadata.xml
new file mode 100644
index 000000000000..02c17902e729
--- /dev/null
+++ b/net-print/pkpgcounter/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>chutzpah@gentoo.org</email>
+ <name>Patrick McLean</name>
+ </maintainer>
+ <longdescription lang="en">
+ pkpgcounter is a python generic PDL (Page Description Language) parser
+ which main feature is to count the number of pages in printable files.
+ </longdescription>
+</pkgmetadata>
diff --git a/net-print/pkpgcounter/pkpgcounter-3.50-r1.ebuild b/net-print/pkpgcounter/pkpgcounter-3.50-r1.ebuild
new file mode 100644
index 000000000000..b4c30589eddc
--- /dev/null
+++ b/net-print/pkpgcounter/pkpgcounter-3.50-r1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="3"
+PYTHON_DEPEND="2"
+
+inherit distutils
+
+DESCRIPTION="pkpgcounter is a python generic PDL (Page Description Language) parser"
+HOMEPAGE="http://www.pykota.com/software/pkpgcounter"
+SRC_URI="http://www.pykota.com/software/${PN}/download/tarballs/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="virtual/python-imaging"
+RDEPEND="${DEPEND}"
+
+DOCS="BUGS CREDITS NEWS README PKG-INFO"
+PYTHON_MODNAME="pkpgpdls"
+
+pkg_setup() {
+ python_set_active_version 2
+ python_pkg_setup
+}
+
+src_install() {
+ distutils_src_install
+
+ rm -rf "${D}usr/share/doc/${PN}"
+}
diff --git a/net-print/pnm2ppa/Manifest b/net-print/pnm2ppa/Manifest
new file mode 100644
index 000000000000..843452ff41ba
--- /dev/null
+++ b/net-print/pnm2ppa/Manifest
@@ -0,0 +1 @@
+DIST pnm2ppa-1.13.tar.gz 291190 SHA256 1c50ea2c97b232f5bee6ac3fab408d64b6f1380f1e289ac278778a7e368e7379
diff --git a/net-print/pnm2ppa/files/pnm2ppa-1.12-gentoo.diff b/net-print/pnm2ppa/files/pnm2ppa-1.12-gentoo.diff
new file mode 100644
index 000000000000..0e35168b7003
--- /dev/null
+++ b/net-print/pnm2ppa/files/pnm2ppa-1.12-gentoo.diff
@@ -0,0 +1,180 @@
+diff -ur pnm2ppa-1.12.orig/lpd/ascii.if pnm2ppa-1.12/lpd/ascii.if
+--- pnm2ppa-1.12.orig/lpd/ascii.if 2000-10-28 17:58:07.000000000 +0300
++++ pnm2ppa-1.12/lpd/ascii.if 2009-07-18 21:12:42.000000000 +0300
+@@ -1,6 +1,6 @@
+ #! /bin/sh
+ # for printing black and white text (ascii) files.
+-FILTER="/usr/local/bin/bw.if"
++FILTER="/usr/bin/bw.if"
+ #FILTER="/usr/local/bin/bweco.if"
+ #------enscript command line--------------------------
+ enscript -2rj -p- | $FILTER
+diff -ur pnm2ppa-1.12.orig/lpd/bweco.if pnm2ppa-1.12/lpd/bweco.if
+--- pnm2ppa-1.12.orig/lpd/bweco.if 2000-10-28 17:58:07.000000000 +0300
++++ pnm2ppa-1.12/lpd/bweco.if 2009-07-18 21:12:42.000000000 +0300
+@@ -6,7 +6,7 @@
+ #PAPER=a4
+ #PAPER=a3
+ #PPAOPTS="-B 2"
+-PNM2PPA="/usr/local/bin/pnm2ppa"
++PNM2PPA="/usr/bin/pnm2ppa"
+ #------------------dont change below this line----------------------
+ gs -sDEVICE=pbmraw -sPAPERSIZE=$PAPER -q -dNOPAUSE -r600 -sOutputFile=- - | \
+ $PNM2PPA --bw --eco $PPAOPTS -i - -o -
+diff -ur pnm2ppa-1.12.orig/lpd/bw.if pnm2ppa-1.12/lpd/bw.if
+--- pnm2ppa-1.12.orig/lpd/bw.if 2000-10-28 17:58:07.000000000 +0300
++++ pnm2ppa-1.12/lpd/bw.if 2009-07-18 21:12:42.000000000 +0300
+@@ -6,7 +6,7 @@
+ #PAPER=a4
+ #PAPER=a3
+ #PPAOPTS="-B 2"
+-PNM2PPA="/usr/local/bin/pnm2ppa"
++PNM2PPA="/usr/bin/pnm2ppa"
+ #------------------dont change below this line----------------------
+ gs -sDEVICE=pbmraw -sPAPERSIZE=$PAPER -q -dNOPAUSE -r600 -sOutputFile=- - | \
+ $PNM2PPA --bw $PPAOPTS -i - -o -
+diff -ur pnm2ppa-1.12.orig/lpd/coloreco.if pnm2ppa-1.12/lpd/coloreco.if
+--- pnm2ppa-1.12.orig/lpd/coloreco.if 2000-10-28 17:58:07.000000000 +0300
++++ pnm2ppa-1.12/lpd/coloreco.if 2009-07-18 21:12:42.000000000 +0300
+@@ -6,7 +6,7 @@
+ #PAPER=a4
+ #PAPER=a3
+ #PPAOPTS="--fd"
+-PNM2PPA="/usr/local/bin/pnm2ppa"
++PNM2PPA="/usr/bin/pnm2ppa"
+ #------------------dont change below this line----------------------
+ gs -sDEVICE=ppmraw -sPAPERSIZE=$PAPER -q -dNOPAUSE -r600 -sOutputFile=- - | \
+ $PNM2PPA --eco $PPAOPTS -i - -o -
+diff -ur pnm2ppa-1.12.orig/lpd/color.if pnm2ppa-1.12/lpd/color.if
+--- pnm2ppa-1.12.orig/lpd/color.if 2000-10-28 17:58:07.000000000 +0300
++++ pnm2ppa-1.12/lpd/color.if 2009-07-18 21:12:42.000000000 +0300
+@@ -6,7 +6,7 @@
+ #PAPER=a4
+ #PAPER=a3
+ #PPAOPTS="-p"
+-PNM2PPA="/usr/local/bin/pnm2ppa"
++PNM2PPA="/usr/bin/pnm2ppa"
+ #------------------dont change below this line----------------------
+ gs -sDEVICE=ppmraw -sPAPERSIZE=$PAPER -q -dNOPAUSE -r600 -sOutputFile=- - | \
+ $PNM2PPA $PPAOPTS -i - -o -
+diff -ur pnm2ppa-1.12.orig/lpd/printcap pnm2ppa-1.12/lpd/printcap
+--- pnm2ppa-1.12.orig/lpd/printcap 2000-10-27 21:12:23.000000000 +0300
++++ pnm2ppa-1.12/lpd/printcap 2009-07-18 21:12:42.000000000 +0300
+@@ -6,7 +6,7 @@
+ :sd=/var/spool/lpd/coloreco:\
+ :lf=/var/spool/lpd/coloreco/log:\
+ :af=/var/spool/lpd/coloreco/acct:\
+- :if=/usr/local/bin/coloreco.if:\
++ :if=/usr/bin/coloreco.if:\
+ :la:mx#0:\
+ :sh:sf:
+
+@@ -16,7 +16,7 @@
+ :sd=/var/spool/lpd/color:\
+ :lf=/var/spool/lpd/color/log:\
+ :af=/var/spool/lpd/color/acct:\
+- :if=/usr/local/bin/color.if:\
++ :if=/usr/bin/color.if:\
+ :la:mx#0:\
+ :sh:sf:
+
+@@ -26,7 +26,7 @@
+ :sd=/var/spool/lpd/bw:\
+ :lf=/var/spool/lpd/bw/log:\
+ :af=/var/spool/lpd/bw/acct:\
+- :if=/usr/local/bin/bw.if:\
++ :if=/usr/bin/bw.if:\
+ :la:mx#0:\
+ :sh:sf:
+
+@@ -36,7 +36,7 @@
+ :sd=/var/spool/lpd/bweco:\
+ :lf=/var/spool/lpd/bweco/log:\
+ :af=/var/spool/lpd/bweco/acct:\
+- :if=/usr/local/bin/bweco.if:\
++ :if=/usr/bin/bweco.if:\
+ :la:mx#0:\
+ :sh:sf:
+
+@@ -46,7 +46,7 @@
+ :sd=/var/spool/lpd/ascii:\
+ :lf=/var/spool/lpd/ascii/log:\
+ :af=/var/spool/lpd/ascii/acct:\
+- :if=/usr/local/bin/ascii.if:\
++ :if=/usr/bin/ascii.if:\
+ :la:mx#0:\
+ :sh:sf:
+
+diff -ur pnm2ppa-1.12.orig/Makefile pnm2ppa-1.12/Makefile
+--- pnm2ppa-1.12.orig/Makefile 2002-11-16 01:29:29.000000000 +0200
++++ pnm2ppa-1.12/Makefile 2009-07-18 21:22:20.000000000 +0300
+@@ -5,14 +5,14 @@
+ # paths to locations where the pnm2ppa binary, the configuration file,
+ # and the man page should be installed. On some systems (like Solaris)
+ # the install command requires the syntax BINDIR="-f /usr/local/bin".
+-BINDIR="/usr/local/bin"
++BINDIR="/usr/bin"
+ CONFDIR="/etc"
+-MANDIR="/usr/local/man/man1"
++MANDIR="/usr/share/man/man1"
+
+ #compiler and linker options:
+-CC=gcc
+-CFLAGS=-Wall -pedantic -O2
+-LDFLAGS=-lm
++CC?=gcc
++CFLAGS+=-Wall -pedantic
++LIBS=-lm
+
+ INSTALL=install
+ # Install under Linux and other versions with the -b (backup) option
+@@ -81,10 +81,10 @@
+ default: all
+
+ profile:
+- make "CFLAGS=-Wall -pedantic -O2 -g -pg -DNDEBUG"
++ make "CFLAGS=-Wall -pedantic -g -pg -DNDEBUG"
+
+ debug:
+- make "CFLAGS=-Wall -pedantic -g -O2 -DDEBUG=1 -DLANG_EN" "LDFLAGS=-lm -lefence" "OBJS=$(DOBJS)"
++ make "CFLAGS=-Wall -pedantic -g -DDEBUG=1 -DLANG_EN" "LIBS=-lm" "OBJS=$(DOBJS)"
+
+ # the following have been left in for those with good memories
+
+@@ -125,10 +125,10 @@
+ rm -f $(CONFDIR)/pnm2ppa.conf
+
+ pnm2ppa: $(OBJS)
+- $(CC) $(LDFLAGS) $(CFLAGS) -o pnm2ppa $(OBJS)
++ $(CC) $(LDFLAGS) $(CFLAGS) $(OBJS) $(LIBS) -o pnm2ppa
+
+ calibrate_ppa: calibrate_ppa.o pnmtools.o gamma.o
+- $(CC) $(LDFLAGS) $(CFLAGS) -o calibrate_ppa calibrate_ppa.o pnmtools.o gamma.o
++ $(CC) $(LDFLAGS) $(CFLAGS) calibrate_ppa.o pnmtools.o gamma.o $(LIBS) -o calibrate_ppa
+
+ calibrate_ppa.o: calibrate_ppa.c global.h image.h defaults.h pnmtools.h
+ $(CC) $(CFLAGS) -c calibrate_ppa.c
+diff -ur pnm2ppa-1.12.orig/ppa_protocol/Makefile pnm2ppa-1.12/ppa_protocol/Makefile
+--- pnm2ppa-1.12.orig/ppa_protocol/Makefile 2000-10-21 05:17:46.000000000 +0300
++++ pnm2ppa-1.12/ppa_protocol/Makefile 2009-07-18 21:18:27.000000000 +0300
+@@ -2,9 +2,9 @@
+ # Makefile for parse_vlink
+ #
+
+-CC=gcc
++CC?=gcc
+
+-CFLAGS=-Wall -pedantic -O2 -g
++CFLAGS+=-Wall -pedantic
+
+ default: all
+
+diff -ur pnm2ppa-1.12.orig/ppa_protocol/parse_vlink.c pnm2ppa-1.12/ppa_protocol/parse_vlink.c
+--- pnm2ppa-1.12.orig/ppa_protocol/parse_vlink.c 2000-10-21 05:17:46.000000000 +0300
++++ pnm2ppa-1.12/ppa_protocol/parse_vlink.c 2009-07-18 21:19:30.000000000 +0300
+@@ -1,4 +1,5 @@
+ #include <stdio.h>
++#include <string.h>
+
+ void parse_scp (FILE *fptr, int length, unsigned long *pos)
+ {
diff --git a/net-print/pnm2ppa/metadata.xml b/net-print/pnm2ppa/metadata.xml
new file mode 100644
index 000000000000..9a586855c36c
--- /dev/null
+++ b/net-print/pnm2ppa/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+ <upstream>
+ <remote-id type="sourceforge">pnm2ppa</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-print/pnm2ppa/pnm2ppa-1.13-r1.ebuild b/net-print/pnm2ppa/pnm2ppa-1.13-r1.ebuild
new file mode 100644
index 000000000000..353a3c87c5a7
--- /dev/null
+++ b/net-print/pnm2ppa/pnm2ppa-1.13-r1.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit base
+
+DESCRIPTION="Print driver for Hp Deskjet 710, 712, 720, 722, 820, 1000 series"
+HOMEPAGE="http://pnm2ppa.sourceforge.net"
+SRC_URI="mirror://sourceforge/pnm2ppa/${P}.tar.gz"
+
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+LICENSE="GPL-2"
+IUSE="syslog"
+
+# en on first place so others can override it
+LANGS="en cs es fr it nl"
+for lng in ${LANGS}; do
+ IUSE+=" linguas_${lng}"
+done
+
+RDEPEND="
+ app-text/ghostscript-gpl
+ net-print/cups
+ || ( >=net-print/cups-filters-1.0.43-r1[foomatic] net-print/foomatic-filters )
+ sys-libs/glibc
+ syslog? ( virtual/logger )
+"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ local lng i withval
+
+ for lng in ${LANGS}; do
+ if use linguas_${lng}; then
+ if [[ -n ${i} ]] ; then
+ ewarn "This package supports only one translation at a time."
+ ewarn "Overriding previous value: \"${withval}\" with \"${lng}\""
+ fi
+ withval="${lng}"
+ i=true
+ fi
+ done
+
+ econf \
+ --with-language="${lng}" \
+ --enable-vlink \
+ $(use_enable syslog)
+}
+
+src_install() {
+ default
+
+ dobin utils/Linux/detect_ppa utils/Linux/test_ppa
+
+ insinto /usr/share/pnm2ppa
+ doins -r lpd pdq
+
+ exeinto /usr/share/pnm2ppa/lpd
+ doexe lpd/lpdsetup
+
+ exeinto /usr/share/pnm2ppa/sample_scripts
+ doexe sample_scripts/*
+
+ exeinto /etc/pdq/drivers/ghostscript
+ doexe pdq/gs-pnm2ppa
+ exeinto /etc/pdq/interfaces
+ doexe pdq/dummy
+
+ # install docs
+ cd docs/en
+ dodoc CALIBRATION*txt COLOR*txt PPA*txt RELEASE* CREDITS README sgml/*.sgml
+
+ cd "${S}"
+ dohtml -r .
+}
diff --git a/net-print/poster/Manifest b/net-print/poster/Manifest
new file mode 100644
index 000000000000..45c58b734b91
--- /dev/null
+++ b/net-print/poster/Manifest
@@ -0,0 +1 @@
+DIST poster-20060221.tar.bz2 33770 SHA256 63bd6f01e40e68dda0ac11a4f416c70457bc6bbd254af720b7ea2874875fa4ba
diff --git a/net-print/poster/metadata.xml b/net-print/poster/metadata.xml
new file mode 100644
index 000000000000..1fa0ca569505
--- /dev/null
+++ b/net-print/poster/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>printing</herd>
+</pkgmetadata>
diff --git a/net-print/poster/poster-20060221.ebuild b/net-print/poster/poster-20060221.ebuild
new file mode 100644
index 000000000000..d6607eb5f50e
--- /dev/null
+++ b/net-print/poster/poster-20060221.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit toolchain-funcs
+
+DESCRIPTION="small utility for making a poster from an EPS file or a one-page PS document"
+SRC_URI="mirror://kde/printing/${P}.tar.bz2"
+HOMEPAGE="http://printing.kde.org/downloads"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+IUSE=""
+
+src_compile(){
+ $(tc-getCC) ${CFLAGS} ${LDFLAGS} ${PN}.c -lm -o ${PN} || die
+}
+
+src_install() {
+ dobin ${PN}
+ doman ${PN}.1
+ dodoc README ChangeLog
+}
diff --git a/net-print/pykota/Manifest b/net-print/pykota/Manifest
new file mode 100644
index 000000000000..5dd785ae1e37
--- /dev/null
+++ b/net-print/pykota/Manifest
@@ -0,0 +1 @@
+DIST pykota-1.26.tar.xz 1377656 SHA256 17318092f30fb80b13ea9dbe8348fcaf66ad4efe3256e0d81b4739123955156e SHA512 b6b0b274a52b031837ff3ad267dcfd84e0292bf0210b46f09ed84d19c83e586297b4e0667f3338aa50cf9db13e750723c5d12868f5bfeb2079c343208cd72c1c WHIRLPOOL 8701c3367b3f0d69f454e0999513310e229d0c73bcff341d72a5d1ae25a167f90d0f2a47c67bbc2bbdb303787531a75cdef3666030d0d7bf3c71165a33df9e11
diff --git a/net-print/pykota/metadata.xml b/net-print/pykota/metadata.xml
new file mode 100644
index 000000000000..e3972d2e16ea
--- /dev/null
+++ b/net-print/pykota/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+ <maintainer>
+ <email>chutzpah@gentoo.org</email>
+ <name>Patrick McLean</name>
+ </maintainer>
+ <longdescription lang="en">
+ PyKota is a complete GPLed Print Quota and Accounting Software Solution
+ for the Common UNIX Printing System (CUPS).
+ </longdescription>
+</pkgmetadata>
diff --git a/net-print/pykota/pykota-1.26.ebuild b/net-print/pykota/pykota-1.26.ebuild
new file mode 100644
index 000000000000..1739a9cd936f
--- /dev/null
+++ b/net-print/pykota/pykota-1.26.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=3
+PYTHON_DEPEND="2"
+PYTHON_USE_WITH='sqlite?'
+
+inherit distutils
+
+DESCRIPTION="Flexible print quota and accounting package for use with CUPS and lpd"
+HOMEPAGE="http://www.pykota.com"
+SRC_URI="http://dev.gentoo.org/~dilfridge/distfiles/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="ldap mysql postgres snmp sqlite xml"
+
+DEPEND="dev-lang/python
+ dev-python/egenix-mx-base
+ net-print/pkpgcounter
+ dev-python/chardet
+ dev-python/pkipplib
+ ldap? ( dev-python/python-ldap )
+ mysql? ( dev-python/mysql-python )
+ postgres? ( dev-db/postgresql[server] dev-python/pygresql )
+ snmp? ( net-analyzer/net-snmp =dev-python/pysnmp-3.4* )
+ xml? ( dev-python/jaxml )"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${P}"
+
+DOCS="README TODO SECURITY CREDITS FAQ"
+
+pkg_setup() {
+ python_set_active_version 2
+ python_pkg_setup
+}
+
+src_prepare() {
+ distutils_src_prepare
+
+ sed -i -e 's:from pysqlite2 import dbapi2:import sqlite3:' \
+ pykota/storages/sqlitestorage.py || die
+}
+
+src_install() {
+ dodir /etc/${PN} || die
+ distutils_src_install
+
+ # cups backend ----------------------------------------------
+
+ dodir $(cups-config --serverbin)/backend || die
+ dosym /usr/share/pykota/cupspykota $(cups-config --serverbin)/backend/cupspykota || die
+
+ # extra docs: inits -----------------------------------------
+
+ init_dir="/usr/share/doc/${PF}/initscripts"
+ insinto "${init_dir}"
+ doins -r initscripts/* || die
+
+ # Fixes permissions for bug 155865
+ chmod 700 "${D}"/usr/share/pykota/cupspykota
+
+ for doc in ${DOCS}; do
+ rm "${D}"/usr/share/doc/${PN}/${doc} || die
+ done
+ rm "${D}"/usr/share/doc/${PN}/{LICENSE,COPYING} || die
+ mv "${D}"/usr/share/doc/${PN}/* "${D}"/usr/share/doc/${PF}/ || die
+ rmdir "${D}"/usr/share/doc/${PN} || die
+}
diff --git a/net-print/splix/Manifest b/net-print/splix/Manifest
new file mode 100644
index 000000000000..dbeaf958daa4
--- /dev/null
+++ b/net-print/splix/Manifest
@@ -0,0 +1,3 @@
+DIST samsung-cms-20120312.tar.xz 3354884 SHA256 66af6a617ff390a076a827e35e5a138467a67b024a8e1f16a99422b93334b5af SHA512 448f111493540dc93b88d59fa50857bdca2aa9eb772e53c1d227402235d878ad599683d74bc4d815b4789527b5e7ebe207bb0c8fa9194eaf61ca95b78a1444db WHIRLPOOL 31d1b8af1b3568f3ba2b3375fb08986c68e80ee59470565cfa5e342b1846f65305edfff4fe785caa58f2ff0229836ff8389219725119b9e0e43e4f016a819f42
+DIST splix-2.0.0_p20111206.tar.bz2 122216 SHA256 3d4805e8dfb04305ac420dc297aebf36622e876ada40a08e997ec17f79755a3f
+DIST splix-2.0.0_p20130826.tar.bz2 127278 SHA256 ff7bca0f294b74c631804b56dd8c8de4909fa4c850a6ec78726b6ebcce581d30 SHA512 dda07e24b4321e6c1e3d4fbdd03fcc2b5931465db36ed9d8676a62313c4c64b7cbd58bf41996ddd1ab02086438f225439db0506aca7f0269f6c84e80eff72cb0 WHIRLPOOL 2b4656deb17ffc935c74c68a734cfdcecaf0387d30bc5660eacfdb8ea667fe064b76d006c7050eed280be1c215128067e1b11ec32df085692e972436acaad504
diff --git a/net-print/splix/metadata.xml b/net-print/splix/metadata.xml
new file mode 100644
index 000000000000..06ac4fb6e275
--- /dev/null
+++ b/net-print/splix/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>printing</herd>
+<maintainer>
+ <email>wschlich@gentoo.org</email>
+ <name>Wolfram Schlich</name>
+ <description>Primary maintainer</description>
+</maintainer>
+<maintainer>
+ <email>voyageur@gentoo.org</email>
+ <name>Bernard Cafarelli</name>
+</maintainer>
+</pkgmetadata>
diff --git a/net-print/splix/splix-2.0.0_p20111206.ebuild b/net-print/splix/splix-2.0.0_p20111206.ebuild
new file mode 100644
index 000000000000..7246ffe81ea0
--- /dev/null
+++ b/net-print/splix/splix-2.0.0_p20111206.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit eutils toolchain-funcs
+
+DESCRIPTION="A set of CUPS printer drivers for SPL (Samsung Printer Language) printers"
+HOMEPAGE="http://splix.sourceforge.net/"
+SRC_URI="http://dev.gentoo.org/~voyageur/distfiles/${P}.tar.bz2
+ http://dev.gentooexperimental.org/~scarabeus/samsung-cms-20120312.tar.xz"
+
+# If you can't find your printer cms open the new bug if you recheck the
+# cms home and it is contained there. Otherwise bummer.
+# The cms can be found here:
+# http://www.bchemnet.com/suldr/smfpv3.html
+# It is stored int he unifieddriver tarball and repacked.
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="+jbig"
+
+DEPEND=">=app-text/ghostscript-gpl-9.02
+ >=net-print/cups-1.4.0
+ jbig? ( media-libs/jbigkit )"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${PN}
+
+src_prepare() {
+ # Honor LDFLAGS
+ sed -e "/[a-z]_LDFLAGS/s/:=.*/:= $\{LDFLAGS\}/" -i module.mk \
+ || die "module.mk sed failed"
+ # Correct link comand, do not strip on install
+ sed -e "s/g++/$\{LINKER\}/" -e "/install/s/-s //" -i rules.mk \
+ || die "rules.mk sed failed"
+}
+
+src_compile() {
+ local options="MODE=optimized"
+ use jbig || options="${options} DISABLE_JBIG=1"
+ emake ${options} PSTORASTER=gstoraster CXX="$(tc-getCXX)" \
+ OPTIM_CFLAGS="${CFLAGS}" OPTIM_CXXFLAGS="${CXXFLAGS}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ gzip "${ED}"/$(cups-config --datadir)/model/*/*.ppd || die "ppd gzip failed"
+
+ # it is expected to be at:
+ # /usr/share/cups/profiles/{samsung,xerox,dell}
+ # instead it is only at:
+ # /usr/share/cups/profiles/samsung
+ emake DESTDIR="${D}" CMSDIR="${WORKDIR}"/cms MANUFACTURER=samsung installcms
+ dosym $(cups-config --datadir)/profiles/samsung $(cups-config --datadir)/profiles/xerox
+ dosym $(cups-config --datadir)/profiles/samsung $(cups-config --datadir)/profiles/dell
+}
+
+pkg_postinst() {
+ ewarn "You *MUST* make sure that the PPD files that CUPS is using"
+ ewarn "for actually installed printers are updated if you upgraded"
+ ewarn "from a previous version of splix!"
+ ewarn "Otherwise you will be unable to print (your printer might"
+ ewarn "spit out blank pages etc.)."
+ ewarn "To do that, simply delete the corresponding PPD file in"
+ ewarn "/etc/cups/ppd/, click on 'Modify Printer' belonging to the"
+ ewarn "corresponding printer in the CUPS webinterface (usually"
+ ewarn "reachable via http://localhost:631/) and choose the correct"
+ ewarn "printer make and model, for example:"
+ ewarn "'Samsung' -> 'Samsung ML-1610, 1.0 (en)'"
+}
diff --git a/net-print/splix/splix-2.0.0_p20130826.ebuild b/net-print/splix/splix-2.0.0_p20130826.ebuild
new file mode 100644
index 000000000000..342ccd7979dd
--- /dev/null
+++ b/net-print/splix/splix-2.0.0_p20130826.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils toolchain-funcs
+
+DESCRIPTION="A set of CUPS printer drivers for SPL (Samsung Printer Language) printers"
+HOMEPAGE="http://splix.sourceforge.net/"
+SRC_URI="http://dev.gentoo.org/~voyageur/distfiles/${P}.tar.bz2
+ http://dev.gentoo.org/~voyageur/samsung-cms-20120312.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+jbig"
+
+DEPEND=">=app-text/ghostscript-gpl-9.02
+ >=net-print/cups-1.4.0
+ jbig? ( media-libs/jbigkit )"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ # Move to correct place
+ mv *.ppd ppd/ || die "ppd files move failed"
+ # Honor LDFLAGS
+ sed -e "/[a-z]_LDFLAGS/s/:=.*/:= $\{LDFLAGS\}/" -i module.mk \
+ || die "module.mk sed failed"
+ # Correct link comand
+ sed -e "s/g++/$\{LINKER\}/" -i rules.mk \
+ || die "rules.mk sed failed"
+}
+
+src_compile() {
+ local options="MODE=optimized"
+ use jbig || options="${options} DISABLE_JBIG=1"
+ emake ${options} PSTORASTER=gstoraster CXX="$(tc-getCXX)" \
+ OPTIM_CFLAGS="${CFLAGS}" OPTIM_CXXFLAGS="${CXXFLAGS}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ gzip "${ED}"/$(cups-config --datadir)/model/*/*.ppd || die "ppd gzip failed"
+
+ emake DESTDIR="${D}" CMSDIR="${WORKDIR}"/cms MANUFACTURER=samsung installcms
+ # Add symlinks for xerox and dell models (installed in samsung)
+ dosym $(cups-config --datadir)/profiles/samsung $(cups-config --datadir)/profiles/xerox
+ dosym $(cups-config --datadir)/profiles/samsung $(cups-config --datadir)/profiles/dell
+}
+
+pkg_postinst() {
+ ewarn "You *MUST* make sure that the PPD files that CUPS is using"
+ ewarn "for actually installed printers are updated if you upgraded"
+ ewarn "from a previous version of splix!"
+ ewarn "Otherwise you will be unable to print (your printer might"
+ ewarn "spit out blank pages etc.)."
+ ewarn "To do that, simply delete the corresponding PPD file in"
+ ewarn "/etc/cups/ppd/, click on 'Modify Printer' belonging to the"
+ ewarn "corresponding printer in the CUPS webinterface (usually"
+ ewarn "reachable via http://localhost:631/) and choose the correct"
+ ewarn "printer make and model, for example:"
+ ewarn "'Samsung' -> 'Samsung ML-1610, 1.0 (en)'"
+}
diff --git a/net-print/sshlpr/Manifest b/net-print/sshlpr/Manifest
new file mode 100644
index 000000000000..21589a160732
--- /dev/null
+++ b/net-print/sshlpr/Manifest
@@ -0,0 +1 @@
+DIST sshlpr-1.tar.gz 1296 RMD160 5c7127c504f6d1cc8d5d45c57d8d676a3a07774a SHA1 76030491178b10a599505af1c24b929cef87863f SHA256 0dba86c1a49ac85919eac0f5a2ec4e46bc34a4003192e48a506e52edf80b9af3
diff --git a/net-print/sshlpr/metadata.xml b/net-print/sshlpr/metadata.xml
new file mode 100644
index 000000000000..fa0354c5b926
--- /dev/null
+++ b/net-print/sshlpr/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>radhermit@gentoo.org</email>
+ <name>Tim Harder</name>
+</maintainer>
+</pkgmetadata>
diff --git a/net-print/sshlpr/sshlpr-1.ebuild b/net-print/sshlpr/sshlpr-1.ebuild
new file mode 100644
index 000000000000..da110653a0b7
--- /dev/null
+++ b/net-print/sshlpr/sshlpr-1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+DESCRIPTION="ssh-lpr backend for cups -- print to remote systems over ssh"
+HOMEPAGE="http://www.masella.name/technical/sshlpr.html"
+SRC_URI="http://dev.gentoo.org/~radhermit/distfiles/${P}.tar.gz"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="net-print/cups"
+RDEPEND="${DEPEND}
+ net-misc/openssh
+ sys-apps/shadow"
+
+S="${WORKDIR}"
+
+src_install() {
+ exeinto $(cups-config --serverbin)/backend
+ exeopts -m0700
+ doexe ${PN}
+}
diff --git a/net-print/xerox-drivers/Manifest b/net-print/xerox-drivers/Manifest
new file mode 100644
index 000000000000..ae27a8b2dcca
--- /dev/null
+++ b/net-print/xerox-drivers/Manifest
@@ -0,0 +1 @@
+DIST LinuxCupsPrinterPkg.tar.gz 1126966 SHA256 066fb371a5f774a789ba60bf3e7a3f0149a147240fe5a43d9494752ef20cc67c
diff --git a/net-print/xerox-drivers/metadata.xml b/net-print/xerox-drivers/metadata.xml
new file mode 100644
index 000000000000..c9ba1c51ddc8
--- /dev/null
+++ b/net-print/xerox-drivers/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+ </maintainer>
+ <longdescription>PPD files of XEROX printers (CopyCentre, DocuPrint, Phaser, WorkCentre) for CUPS printing
+system</longdescription>
+</pkgmetadata>
diff --git a/net-print/xerox-drivers/xerox-drivers-0_p20080123.ebuild b/net-print/xerox-drivers/xerox-drivers-0_p20080123.ebuild
new file mode 100644
index 000000000000..0c605d7a4449
--- /dev/null
+++ b/net-print/xerox-drivers/xerox-drivers-0_p20080123.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+MY_PN="LinuxCupsPrinterPkg"
+
+DESCRIPTION="PPD files of XEROX printers (CopyCentre, DocuPrint, Phaser, WorkCentre) for CUPS printing system"
+HOMEPAGE="http://www.support.xerox.com/go/getfile.asp?objid=61334&prodID=6180"
+SRC_URI="http://download.support.xerox.com/pub/drivers/DocuColor_2006/drivers/unix/en/${MY_PN}.tar.gz"
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND="net-print/cups"
+
+S="${WORKDIR}/${MY_PN}"
+
+# Suppressing warnings from the incorrect upstream tarball
+
+src_unpack() {
+ unpack ${A} 2> /dev/null
+}
+
+src_install() {
+ dodoc Readme.txt || die "missing Readme.txt"
+ insinto /usr/share/cups/model
+ doins *.ppd || die "missing ppd files"
+}