summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-print')
-rw-r--r--net-print/apsfilter/Manifest1
-rw-r--r--net-print/apsfilter/apsfilter-7.2.8-r1.ebuild42
-rw-r--r--net-print/apsfilter/metadata.xml8
-rw-r--r--net-print/brlaser/Manifest3
-rw-r--r--net-print/brlaser/brlaser-6-r1.ebuild (renamed from net-print/brlaser/brlaser-4.ebuild)13
-rw-r--r--net-print/brlaser/brlaser-6.2.6.ebuild28
-rw-r--r--net-print/brlaser/metadata.xml11
-rw-r--r--net-print/c2esp/Manifest1
-rw-r--r--net-print/c2esp/c2esp-26.ebuild52
-rw-r--r--net-print/c2esp/c2esp-27.ebuild8
-rw-r--r--net-print/c2esp/files/c2esp-26-ldflags-cppflags.patch33
-rw-r--r--net-print/c2esp/files/c2esp-27-fno-common.patch32
-rw-r--r--net-print/c2esp/files/c2esp-27-missing-includes.patch (renamed from net-print/c2esp/files/0001-Fix-various-missing-includes.patch)0
-rw-r--r--net-print/c2esp/metadata.xml2
-rw-r--r--net-print/cndrvcups-common-lb/Manifest1
-rw-r--r--net-print/cndrvcups-common-lb/cndrvcups-common-lb-3.60-r1.ebuild116
-rw-r--r--net-print/cndrvcups-common-lb/cndrvcups-common-lb-3.70.ebuild31
-rw-r--r--net-print/cndrvcups-common-lb/files/cndrvcups-common-lb-3.70-fno-common.patch68
-rw-r--r--net-print/cndrvcups-common-lb/metadata.xml2
-rw-r--r--net-print/cndrvcups-lb/Manifest1
-rw-r--r--net-print/cndrvcups-lb/cndrvcups-lb-3.60-r2.ebuild111
-rw-r--r--net-print/cndrvcups-lb/cndrvcups-lb-3.70.ebuild17
-rw-r--r--net-print/cndrvcups-lb/metadata.xml2
-rw-r--r--net-print/cnijfilter2/Manifest6
-rw-r--r--net-print/cnijfilter2/cnijfilter2-5.20.ebuild61
-rw-r--r--net-print/cnijfilter2/cnijfilter2-5.40.ebuild64
-rw-r--r--net-print/cnijfilter2/cnijfilter2-6.60.ebuild (renamed from net-print/cnijfilter2/cnijfilter2-5.50.ebuild)37
-rw-r--r--net-print/cnijfilter2/cnijfilter2-6.70.ebuild (renamed from net-print/cnijfilter2/cnijfilter2-5.70.ebuild)33
-rw-r--r--net-print/cnijfilter2/files/cnijfilter2-5.20-gentoo.patch50
-rw-r--r--net-print/cnijfilter2/files/cnijfilter2-5.80-cflags.patch10
-rw-r--r--net-print/cnijfilter2/files/cnijfilter2-5.80-fno-common.patch11
-rw-r--r--net-print/cnijfilter2/files/cnijfilter2-6.50-gentoo.patch (renamed from net-print/cnijfilter2/files/cnijfilter2-5.70-gentoo.patch)6
-rw-r--r--net-print/cnijfilter2/files/cnijfilter2-6.60-c99.patch10
-rw-r--r--net-print/cnijfilter2/metadata.xml2
-rw-r--r--net-print/cnrdrvcups-lb/Manifest3
-rw-r--r--net-print/cnrdrvcups-lb/cnrdrvcups-lb-5.40.ebuild (renamed from net-print/cnrdrvcups-lb/cnrdrvcups-lb-5.10.ebuild)77
-rw-r--r--net-print/cnrdrvcups-lb/cnrdrvcups-lb-5.80.ebuild200
-rw-r--r--net-print/cnrdrvcups-lb/metadata.xml7
-rw-r--r--net-print/cups-bjnp/Manifest4
-rw-r--r--net-print/cups-bjnp/cups-bjnp-1.1.ebuild16
-rw-r--r--net-print/cups-bjnp/cups-bjnp-1.2.1.ebuild20
-rw-r--r--net-print/cups-bjnp/cups-bjnp-2.0.3-r1.ebuild32
-rw-r--r--net-print/cups-bjnp/cups-bjnp-2.0.3.ebuild (renamed from net-print/cups-bjnp/cups-bjnp-2.0.ebuild)9
-rw-r--r--net-print/cups-bjnp/files/cups-bjnp-2.0.3-configure-clang16.patch34
-rw-r--r--net-print/cups-bjnp/metadata.xml2
-rw-r--r--net-print/cups-browsed/Manifest1
-rw-r--r--net-print/cups-browsed/cups-browsed-2.0.0.ebuild82
-rw-r--r--net-print/cups-browsed/files/0001-cups-browsed.c-Fix-build-with-avahi-disabled-20.patch34
-rw-r--r--net-print/cups-browsed/files/cups-browsed.init.d (renamed from net-print/cups-filters/files/cups-browsed.init.d-r1)2
-rw-r--r--net-print/cups-browsed/metadata.xml11
-rw-r--r--net-print/cups-filters/Manifest7
-rw-r--r--net-print/cups-filters/cups-filters-1.25.11.ebuild139
-rw-r--r--net-print/cups-filters/cups-filters-1.25.13.ebuild139
-rw-r--r--net-print/cups-filters/cups-filters-1.26.2.ebuild139
-rw-r--r--net-print/cups-filters/cups-filters-1.27.2.ebuild138
-rw-r--r--net-print/cups-filters/cups-filters-1.28.17-r2.ebuild (renamed from net-print/cups-filters/cups-filters-1.27.1.ebuild)91
-rw-r--r--net-print/cups-filters/cups-filters-2.0.0-r1.ebuild55
-rw-r--r--net-print/cups-filters/cups-filters-2.0.0.ebuild54
-rw-r--r--net-print/cups-filters/cups-filters-9999.ebuild138
-rw-r--r--net-print/cups-filters/files/cups-browsed.init.d-r29
-rw-r--r--net-print/cups-filters/files/cups-filters-1.28.17-CVE-2023-24805.patch225
-rw-r--r--net-print/cups-filters/files/cups-filters-1.28.17-c++17.patch31
-rw-r--r--net-print/cups-filters/metadata.xml29
-rw-r--r--net-print/cups-meta/cups-meta-1.ebuild23
-rw-r--r--net-print/cups-meta/metadata.xml14
-rw-r--r--net-print/cups-pdf/Manifest2
-rw-r--r--net-print/cups-pdf/cups-pdf-2.6.1.ebuild46
-rw-r--r--net-print/cups-pdf/cups-pdf-3.0.1-r3.ebuild (renamed from net-print/cups-pdf/cups-pdf-3.0.0.ebuild)27
-rw-r--r--net-print/cups-pdf/cups-pdf-3.0.1.ebuild47
-rw-r--r--net-print/cups-pdf/files/cups-pdf-3.0.1-ghostscript-gpl-9.54-compat.patch28
-rw-r--r--net-print/cups-pdf/metadata.xml10
-rw-r--r--net-print/cups-pk-helper/Manifest2
-rw-r--r--net-print/cups-pk-helper/cups-pk-helper-0.2.6.ebuild42
-rw-r--r--net-print/cups-pk-helper/cups-pk-helper-0.2.7-r1.ebuild31
-rw-r--r--net-print/cups-pk-helper/metadata.xml13
-rw-r--r--net-print/cups-windows/cups-windows-6.0-r1.ebuild13
-rw-r--r--net-print/cups-windows/metadata.xml2
-rw-r--r--net-print/cups/Manifest4
-rw-r--r--net-print/cups/cups-2.4.6.ebuild (renamed from net-print/cups/cups-2.3.1.ebuild)234
-rw-r--r--net-print/cups/cups-2.4.7-r1.ebuild (renamed from net-print/cups/cups-2.2.13.ebuild)239
-rw-r--r--net-print/cups/cups-2.4.7-r2.ebuild320
-rw-r--r--net-print/cups/cups-9999.ebuild230
-rw-r--r--net-print/cups/files/cups-1.4.4-nostrip.patch14
-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-rename-systemd-service-files.patch46
-rw-r--r--net-print/cups/files/cups-2.2.0-dont-compress-manpages.patch17
-rw-r--r--net-print/cups/files/cups-2.2.6-fix-install-perms.patch18
-rw-r--r--net-print/cups/files/cups-2.4.1-nostrip.patch11
-rw-r--r--net-print/cups/files/cups-2.4.1-user-AR.patch21
-rw-r--r--net-print/cups/files/cupsd.init.d-r4 (renamed from net-print/cups/files/cupsd.init.d-r3)4
-rw-r--r--net-print/cups/metadata.xml34
-rw-r--r--net-print/dymo-cups-drivers/dymo-cups-drivers-1.4.0-r2.ebuild (renamed from net-print/dymo-cups-drivers/dymo-cups-drivers-1.4.0-r1.ebuild)15
-rw-r--r--net-print/dymo-cups-drivers/dymo-cups-drivers-1.4.0.ebuild39
-rw-r--r--net-print/dymo-cups-drivers/files/cups-2.3.0-headers.patch24
-rw-r--r--net-print/dymo-cups-drivers/metadata.xml4
-rw-r--r--net-print/epson-inkjet-printer-escpr/Manifest4
-rw-r--r--net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.2.9-r1.ebuild36
-rw-r--r--net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.2.9.ebuild32
-rw-r--r--net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.8.4.ebuild (renamed from net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.7.7.ebuild)17
-rw-r--r--net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.8.5.ebuild39
-rw-r--r--net-print/epson-inkjet-printer-escpr/files/epson-inkjet-printer-escpr-1.7.7-fnocommon.patch11
-rw-r--r--net-print/epson-inkjet-printer-escpr/files/epson-inkjet-printer-escpr-1.8-missing-include.patch129
-rw-r--r--net-print/epson-inkjet-printer-escpr/files/epson-inkjet-printer-escpr-2-gcc14.patch228
-rw-r--r--net-print/epson-inkjet-printer-escpr/metadata.xml45
-rw-r--r--net-print/fax4cups/fax4cups-1.29-r1.ebuild23
-rw-r--r--net-print/fax4cups/metadata.xml6
-rw-r--r--net-print/foo2zjs/foo2zjs-20200221.ebuild6
-rw-r--r--net-print/foo2zjs/foo2zjs-99999999.ebuild22
-rw-r--r--net-print/foo2zjs/metadata.xml2
-rw-r--r--net-print/foomatic-db-engine/files/4.0.7-perl-module.patch2
-rw-r--r--net-print/foomatic-db-engine/files/4.0.7-respect-ldflag.patch4
-rw-r--r--net-print/foomatic-db-engine/foomatic-db-engine-4.0.12-r1.ebuild (renamed from net-print/foomatic-db-engine/foomatic-db-engine-4.0.12.ebuild)36
-rw-r--r--net-print/foomatic-db-engine/metadata.xml2
-rw-r--r--net-print/foomatic-db-ppds/Manifest2
-rw-r--r--net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20170331.ebuild29
-rw-r--r--net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20180126.ebuild30
-rw-r--r--net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20190226.ebuild6
-rw-r--r--net-print/foomatic-db-ppds/metadata.xml3
-rw-r--r--net-print/foomatic-db/Manifest2
-rw-r--r--net-print/foomatic-db/foomatic-db-4.0.20170331.ebuild40
-rw-r--r--net-print/foomatic-db/foomatic-db-4.0.20180126.ebuild41
-rw-r--r--net-print/foomatic-db/foomatic-db-4.0.20190226.ebuild4
-rw-r--r--net-print/foomatic-db/metadata.xml3
-rw-r--r--net-print/gtklp/gtklp-1.3.1.ebuild21
-rw-r--r--net-print/gtklp/metadata.xml4
-rw-r--r--net-print/gutenprint/Manifest2
-rw-r--r--net-print/gutenprint/gutenprint-5.3.4-r2.ebuild (renamed from net-print/gutenprint/gutenprint-5.3.3.ebuild)38
-rw-r--r--net-print/gutenprint/metadata.xml2
-rw-r--r--net-print/hplip-plugin/Manifest3
-rw-r--r--net-print/hplip-plugin/hplip-plugin-3.19.12.ebuild71
-rw-r--r--net-print/hplip-plugin/hplip-plugin-3.23.12.ebuild (renamed from net-print/hplip-plugin/hplip-plugin-3.20.2.ebuild)46
-rw-r--r--net-print/hplip-plugin/metadata.xml9
-rw-r--r--net-print/hplip/Manifest5
-rw-r--r--net-print/hplip/hplip-3.19.12-r1.ebuild276
-rw-r--r--net-print/hplip/hplip-3.23.12-r1.ebuild (renamed from net-print/hplip/hplip-3.20.2.ebuild)148
-rw-r--r--net-print/hplip/metadata.xml3
-rw-r--r--net-print/ink/Manifest3
-rw-r--r--net-print/ink/ink-0.5.2.ebuild21
-rw-r--r--net-print/ink/ink-0.5.3.ebuild (renamed from net-print/ink/ink-0.5.1.ebuild)14
-rw-r--r--net-print/ink/metadata.xml2
-rw-r--r--net-print/kyocera-1x2x-mfp-driver/metadata.xml7
-rw-r--r--net-print/kyocera-mita-ppds/Manifest1
-rw-r--r--net-print/kyocera-mita-ppds/kyocera-mita-ppds-8.4-r1.ebuild48
-rw-r--r--net-print/kyocera-mita-ppds/metadata.xml5
-rw-r--r--net-print/lexmark-upd-ppd/Manifest1
-rw-r--r--net-print/lexmark-upd-ppd/lexmark-upd-ppd-1.0.0.20220702.ebuild45
-rw-r--r--net-print/lexmark-upd-ppd/metadata.xml8
-rw-r--r--net-print/libcupsfilters/Manifest1
-rw-r--r--net-print/libcupsfilters/files/libcupsfilters-2.0.0-color-space.patch254
-rw-r--r--net-print/libcupsfilters/files/libcupsfilters-2.0.0-r3-c++17.patch17
-rw-r--r--net-print/libcupsfilters/files/libcupsfilters-2.0.0-raster-build-fix.patch28
-rw-r--r--net-print/libcupsfilters/files/libcupsfilters-2.0.0-raster-gray.patch50
-rw-r--r--net-print/libcupsfilters/libcupsfilters-2.0.0-r3.ebuild75
-rw-r--r--net-print/libcupsfilters/libcupsfilters-2.0.0-r4.ebuild77
-rw-r--r--net-print/libcupsfilters/metadata.xml14
-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.ebuild49
-rw-r--r--net-print/libgnomecups/libgnomecups-0.2.3-r5.ebuild64
-rw-r--r--net-print/libgnomecups/metadata.xml12
-rw-r--r--net-print/libinklevel/Manifest2
-rw-r--r--net-print/libinklevel/files/libinklevel-0.9.2-autoconf-2.70.patch51
-rw-r--r--net-print/libinklevel/libinklevel-0.9.3.ebuild (renamed from net-print/libinklevel/libinklevel-0.9.2.ebuild)25
-rw-r--r--net-print/libinklevel/metadata.xml2
-rw-r--r--net-print/libppd/Manifest1
-rw-r--r--net-print/libppd/files/libppd-2.0.0-slibtool.patch64
-rw-r--r--net-print/libppd/libppd-2.0.0.ebuild63
-rw-r--r--net-print/libppd/metadata.xml14
-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.ebuild45
-rw-r--r--net-print/lm1100/metadata.xml6
-rw-r--r--net-print/metadata.xml3
-rw-r--r--net-print/mtink/files/mtink-1.0.16-fix-function-declarations.patch57
-rw-r--r--net-print/mtink/files/mtink-1.0.16-flags.patch5
-rw-r--r--net-print/mtink/files/mtink-1.0.16-fno-common.patch20
-rw-r--r--net-print/mtink/files/mtink-1.0.16-motif.patch49
-rw-r--r--net-print/mtink/files/mtink-1.0.16-overflow.patch4
-rw-r--r--net-print/mtink/metadata.xml10
-rw-r--r--net-print/mtink/mtink-1.0.16-r2.ebuild40
-rw-r--r--net-print/npadmin/files/npadmin-0.8.7-makefile.patch43
-rw-r--r--net-print/npadmin/metadata.xml2
-rw-r--r--net-print/npadmin/npadmin-0.8.7-r1.ebuild6
-rw-r--r--net-print/npadmin/npadmin-0.8.7-r2.ebuild34
-rw-r--r--net-print/pkpgcounter/Manifest1
-rw-r--r--net-print/pkpgcounter/metadata.xml12
-rw-r--r--net-print/pkpgcounter/pkpgcounter-3.50-r2.ebuild26
-rw-r--r--net-print/pnm2ppa/files/pnm2ppa-1.13-clang16.patch7
-rw-r--r--net-print/pnm2ppa/files/pnm2ppa-1.13-fno-common.patch26
-rw-r--r--net-print/pnm2ppa/metadata.xml2
-rw-r--r--net-print/pnm2ppa/pnm2ppa-1.13-r2.ebuild (renamed from net-print/pnm2ppa/pnm2ppa-1.13-r1.ebuild)30
-rw-r--r--net-print/poster/metadata.xml2
-rw-r--r--net-print/poster/poster-20060221-r2.ebuild30
-rw-r--r--net-print/poster/poster-20060221-r4.ebuild (renamed from net-print/poster/poster-20060221-r3.ebuild)9
-rw-r--r--net-print/poster/poster-20060221.ebuild25
-rw-r--r--net-print/splix/metadata.xml3
-rw-r--r--net-print/splix/splix-2.0.0_p20130826-r1.ebuild8
-rw-r--r--net-print/splix/splix-2.0.0_p20130826.ebuild62
-rw-r--r--net-print/sshlpr/metadata.xml2
-rw-r--r--net-print/sshlpr/sshlpr-1-r1.ebuild (renamed from net-print/sshlpr/sshlpr-1.ebuild)6
211 files changed, 3854 insertions, 4045 deletions
diff --git a/net-print/apsfilter/Manifest b/net-print/apsfilter/Manifest
deleted file mode 100644
index c347450380fa..000000000000
--- a/net-print/apsfilter/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST apsfilter-7.2.8.tar.bz2 310587 BLAKE2B aae44a7e79157d3ddf9ce56fe51ae90106eb952d536658efe0f19dfcbe5f0d5c7dd078e3bb5044433e250df6b9289a08a466d6e9fc77c91d540daf07a70bf197 SHA512 ca07e7eb620a95b08fb912e899520d5ff85613eb3d1f712e1d38a66cf5b84516dbb35e3e40ef75ac10d1e717cfc2f49930a0f0873fee451d495c8ae572072012
diff --git a/net-print/apsfilter/apsfilter-7.2.8-r1.ebuild b/net-print/apsfilter/apsfilter-7.2.8-r1.ebuild
deleted file mode 100644
index dcc618969c3a..000000000000
--- a/net-print/apsfilter/apsfilter-7.2.8-r1.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-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
- >=app-text/a2ps-4.13b-r4
- virtual/awk
- virtual/imagemagick-tools
- 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
deleted file mode 100644
index c439b06d8c84..000000000000
--- a/net-print/apsfilter/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>printing@gentoo.org</email>
- <name>Gentoo Printing Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/net-print/brlaser/Manifest b/net-print/brlaser/Manifest
index 17130522da1d..02dd07d44671 100644
--- a/net-print/brlaser/Manifest
+++ b/net-print/brlaser/Manifest
@@ -1 +1,2 @@
-DIST brlaser-4.tar.gz 21963 BLAKE2B 03d5e16ff9b6a6838c82b197bec4a868e6be5752ad9a1df393b646b35642da8f2e1528031b10ece3b0cd7c6c426ff76d1df83c73a51bcac7abac803cd0a66535 SHA512 1e08091adc371a35f75c245fd86f132aae7811a00bd7e9d194c47038dc9aa29296fbf8769cef6b8ea42d82467857195ba8024a9d6de8048174ecc44e0bb76067
+DIST brlaser-6.2.6.tar.gz 25815 BLAKE2B 0583576e41d895df5fc9d20244daa38abd3f675af13f75f769045644f419385c99a1137c88a6ac8997a7fd4ab7323af304f62d785dac66b1174a9994e3f5104a SHA512 285a053473ae576167e653bb94c20a1ae676c1a39ec87d9b14c664e389a4713d93ca29d5cefd92a6793e1ffbc8b03b119ea8cd903749ae21c9354ce30d470a51
+DIST brlaser-6.tar.gz 22807 BLAKE2B be8041c1b6ddb8c4e5055fa35edc2c764562b2b4e52cad17aa968a51886621264d6bf289bd7bb5af0148098bb72aa96adea603091b38c3a245068d60737e80fc SHA512 d7e0e63b64be9ae7633381622c13ba0589e5fe58d277212bce4f5bb712a291ed0b0f2ac3d450dce61c7f9052c1ce7323fec66b5005c5cb3da1314b284d20f06f
diff --git a/net-print/brlaser/brlaser-4.ebuild b/net-print/brlaser/brlaser-6-r1.ebuild
index e307a20fbeca..502b56748750 100644
--- a/net-print/brlaser/brlaser-4.ebuild
+++ b/net-print/brlaser/brlaser-6-r1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-inherit cmake-utils
+inherit cmake
DESCRIPTION="Brother laser printer driver"
HOMEPAGE="https://github.com/pdewacht/brlaser"
@@ -17,3 +17,10 @@ DEPEND="net-print/cups"
RDEPEND="
${DEPEND}
app-text/ghostscript-gpl"
+
+src_prepare() {
+ # Don't clobber toolchain defaults
+ sed -i -e '/-D_FORTIFY_SOURCE=2/d' CMakeLists.txt || die
+
+ cmake_src_prepare
+}
diff --git a/net-print/brlaser/brlaser-6.2.6.ebuild b/net-print/brlaser/brlaser-6.2.6.ebuild
new file mode 100644
index 000000000000..683dbf0ec1a4
--- /dev/null
+++ b/net-print/brlaser/brlaser-6.2.6.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Brother laser printer driver"
+HOMEPAGE="https://github.com/Owl-Maintain/brlaser/"
+SRC_URI="https://github.com/Owl-Maintain/brlaser/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+# https://github.com/Owl-Maintain/brlaser/blob/master/src/main.cc#L5C1-L8C39
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="net-print/cups"
+RDEPEND="
+ ${DEPEND}
+ app-text/ghostscript-gpl
+"
+
+src_prepare() {
+ # Don't clobber toolchain defaults
+ sed -i -e '/-D_FORTIFY_SOURCE=2/d' CMakeLists.txt || die
+
+ cmake_src_prepare
+}
diff --git a/net-print/brlaser/metadata.xml b/net-print/brlaser/metadata.xml
index 0a61a5ac6871..42a4adc7f922 100644
--- a/net-print/brlaser/metadata.xml
+++ b/net-print/brlaser/metadata.xml
@@ -1,16 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>cyrevolt@googlemail.com</email>
<name>Daniel Maslowski</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
- </maintainer>
+ </maintainer>
<maintainer type="project">
<email>printing@gentoo.org</email>
<name>Gentoo Printing Project</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">Owl-Maintain/brlaser</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/net-print/c2esp/Manifest b/net-print/c2esp/Manifest
index 9fe172032075..ca69f487bc54 100644
--- a/net-print/c2esp/Manifest
+++ b/net-print/c2esp/Manifest
@@ -1,2 +1 @@
DIST c2esp-27.tar.gz 143551 BLAKE2B 7cc80fd72eed24c24cb153d7395a692849c51249ca40a563f94bedbb82c6d976bce6b44d47dbe21c36ec40f26571178f562b175485f404d356724b4bc3f611bf SHA512 d3ff9dc6de7cf692e4be4f4b316f862d271bff06181f0000daf1ce2fb6921f1b24efe88ec24f7b811d78cb9dca18fcba3f17dd5273ac84ceb9f6bfcecedeecce
-DIST c2esp26.tar.gz 127593 BLAKE2B 84e6ff61fc5af225526a569861bf316a2b7b1aa8f2bf4d7af15a04042f9dd2da7726d34b66d12dea8748532a54d5ae3a1b0bbfafdccccbea192725751cf3416e SHA512 aa1ca61f895de4892e1058b349fcf1830da78455ffbd0d9989b7ac4e922076e184de91a2b79f285d946d29ece7a6d8159f62c900ed8d6c76859a4261c92da359
diff --git a/net-print/c2esp/c2esp-26.ebuild b/net-print/c2esp/c2esp-26.ebuild
deleted file mode 100644
index 1619b47f90b3..000000000000
--- a/net-print/c2esp/c2esp-26.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-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/c2esp-27.ebuild b/net-print/c2esp/c2esp-27.ebuild
index 69e58fbb92f9..81e38ab4ccaa 100644
--- a/net-print/c2esp/c2esp-27.ebuild
+++ b/net-print/c2esp/c2esp-27.ebuild
@@ -1,11 +1,12 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="A CUPS filter for Kodak ESP printers"
HOMEPAGE="https://sourceforge.net/projects/cupsdriverkodak"
-SRC_URI="mirror://sourceforge/cupsdriverkodak/files/${P}.tar.gz"
+SRC_URI="https://downloads.sourceforge.net/cupsdriverkodak/files/${P}.tar.gz"
+
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm ~x86"
@@ -17,7 +18,8 @@ DEPEND=">=media-libs/jbigkit-2.0-r1:=
RDEPEND="${DEPEND}"
PATCHES=(
- "${FILESDIR}"/0001-Fix-various-missing-includes.patch
+ "${FILESDIR}"/${P}-missing-includes.patch
+ "${FILESDIR}"/${P}-fno-common.patch
)
src_configure() {
diff --git a/net-print/c2esp/files/c2esp-26-ldflags-cppflags.patch b/net-print/c2esp/files/c2esp-26-ldflags-cppflags.patch
deleted file mode 100644
index 1ea36482687d..000000000000
--- a/net-print/c2esp/files/c2esp-26-ldflags-cppflags.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-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/files/c2esp-27-fno-common.patch b/net-print/c2esp/files/c2esp-27-fno-common.patch
new file mode 100644
index 000000000000..8e4dc81519e2
--- /dev/null
+++ b/net-print/c2esp/files/c2esp-27-fno-common.patch
@@ -0,0 +1,32 @@
+Taken from: https://sources.debian.org/patches/c2esp/27-8/0002-Add-extern-stanzas-to-variable-definitions-in-header.patch/
+Author: Didier Raboud <odyx@debian.org>
+
+--- a/src/c2espcommon.c
++++ b/src/c2espcommon.c
+@@ -42,11 +42,11 @@
+ * Globals...
+ */
+ char CallerName[50]; /* String that identifies the calling program */
+-int DoBack; /* Enables the back channel comms */
++extern int DoBack; /* Enables the back channel comms */
+ char BackBuf[32000]; //for the back channel replies from the printer
+ int BackBufLen=sizeof(BackBuf)-1;
+ FILE *LogFile = NULL; //file descriptor for log file
+-time_t StartTime;
++extern time_t StartTime;
+ int BlackPercent, ColourPercent;
+
+ time_t KeepAwake(time_t Start, int Interval, FILE *PrintFile)
+--- a/src/c2espcommon.h
++++ b/src/c2espcommon.h
+@@ -35,8 +35,8 @@
+ /*
+ * Globals...
+ */
+-char BackBuf[32000]; //for the back channel replies from the printer
+-int ColourPercent, BlackPercent; //to store the detected marker levels
++extern char BackBuf[32000]; //for the back channel replies from the printer
++extern int ColourPercent, BlackPercent; //to store the detected marker levels
+
+
+ time_t KeepAwake(time_t Start, int Interval, FILE *PrintFile);
diff --git a/net-print/c2esp/files/0001-Fix-various-missing-includes.patch b/net-print/c2esp/files/c2esp-27-missing-includes.patch
index bde86e666688..bde86e666688 100644
--- a/net-print/c2esp/files/0001-Fix-various-missing-includes.patch
+++ b/net-print/c2esp/files/c2esp-27-missing-includes.patch
diff --git a/net-print/c2esp/metadata.xml b/net-print/c2esp/metadata.xml
index b57181121c2c..9975684c2cc9 100644
--- a/net-print/c2esp/metadata.xml
+++ b/net-print/c2esp/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>printing@gentoo.org</email>
diff --git a/net-print/cndrvcups-common-lb/Manifest b/net-print/cndrvcups-common-lb/Manifest
index 225fe9561f29..b8b441732ad7 100644
--- a/net-print/cndrvcups-common-lb/Manifest
+++ b/net-print/cndrvcups-common-lb/Manifest
@@ -1,2 +1 @@
-DIST linux-UFRII-drv-v360-uken.tar.gz 116695930 BLAKE2B 75b0ed7a957fbc1677a834e67b92b7752cfa74536cb238b553f1c2c98b86399c29209240d093492ea212618c0092ad59a22f03f992462b8ef488f8ed58b51d21 SHA512 c8b2abb2d0e9ccf972241dda5154c0ddd1ba9cfe6c721c242c40c90cf29e8d0b2c6a559907318cd191232f699a42425cc4148aebcaab6aa111f1cb5439777ce7
DIST linux-UFRII-drv-v370-uken-05.tar.gz 117334511 BLAKE2B 295c7a710b0f1ee29e642b29c7b0576f68317dba93758825aa85d431129cebea174d5c2dfa67f7506fa3b18fe48d373f0dc9331ed9caabc2e3bc733946aefd97 SHA512 d83254b7f7f87c56caeaaf151d898de36f746c03ad88d427959bdeec905b9cd92a14a8ac534073473a6cefbb5e2b0be9e9faa79b500e252ecd0a0564d2312bbc
diff --git a/net-print/cndrvcups-common-lb/cndrvcups-common-lb-3.60-r1.ebuild b/net-print/cndrvcups-common-lb/cndrvcups-common-lb-3.60-r1.ebuild
deleted file mode 100644
index cbdab7f9b8cb..000000000000
--- a/net-print/cndrvcups-common-lb/cndrvcups-common-lb-3.60-r1.ebuild
+++ /dev/null
@@ -1,116 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit autotools
-
-MY_PV="$(ver_rs 1- '')"
-SOURCES_NAME="linux-UFRII-drv-v${MY_PV}-uken"
-
-DESCRIPTION="Common files for Canon drivers"
-HOMEPAGE="https://www.canon-europe.com/support/products/imagerunner/imagerunner-1730i.aspx"
-SRC_URI="http://gdlp01.c-wss.com/gds/0/0100009240/02/${SOURCES_NAME}.tar.gz"
-
-# GPL-2 License inside LICENSE-EN.txt files
-LICENSE="Canon-UFR-II GPL-2 MIT"
-SLOT="0"
-KEYWORDS="-* amd64 x86"
-IUSE=""
-
-RDEPEND="
- >=dev-libs/libxml2-2.6:2
- >=gnome-base/libglade-2.4:2.0
- >=net-print/cups-1.1.17
- >=x11-libs/gtk+-2.4:2
-"
-DEPEND="${DEPEND}"
-
-S="${WORKDIR}/${SOURCES_NAME}/Sources/${P/-lb-${PV}/-4.00}"
-
-pkg_setup() {
- # 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.1.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/" || die
- unpack ./${P/-lb-${PV}/-4.00}-1.tar.gz
-}
-
-change_dir() {
- for i in cngplp buftool backend; do
- cd "${i}" || die
- "${@}"
- cd "${S}" || die
- done
-}
-
-src_prepare() {
- default
- sed -i -e \
- "s:backenddir = \$(libdir)/cups/backend:backenddir = `cups-config --serverbin`/backend:" \
- backend/Makefile.am || die
-
- export "LIBS=-lgtk-x11-2.0 -lgobject-2.0 -lglib-2.0 -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" || die
- emake
-}
-
-src_install() {
- MAKEOPTS+=" -j1" default
-
- einstalldocs
-
- cd "${S}/c3plmod_ipc" || die
- 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" || die
- insinto /usr/share/caepcm
- doins *
-
- ABI=x86
- cd "${S}/libs" || die
- 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 :(, bug #????
- # Only needed with SYMLINK_LIB=yes #642138
- if [[ "$(get_libdir)" != lib ]] && [[ ${SYMLINK_LIB} = yes ]]; then
- dosym "../$(get_libdir)/libc3pl.so" /usr/lib/libc3pl.so
- fi
-}
diff --git a/net-print/cndrvcups-common-lb/cndrvcups-common-lb-3.70.ebuild b/net-print/cndrvcups-common-lb/cndrvcups-common-lb-3.70.ebuild
index 23e5c3724b52..bfcbeceba005 100644
--- a/net-print/cndrvcups-common-lb/cndrvcups-common-lb-3.70.ebuild
+++ b/net-print/cndrvcups-common-lb/cndrvcups-common-lb-3.70.ebuild
@@ -1,32 +1,31 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit autotools
+
+inherit autotools multilib toolchain-funcs
MY_PV="$(ver_rs 1- '')"
SOURCES_NAME="linux-UFRII-drv-v${MY_PV}-uken"
DESCRIPTION="Common files for Canon drivers"
-HOMEPAGE="https://www.canon-europe.com/support/products/imagerunner/imagerunner-1730i.aspx"
+HOMEPAGE="https://www.canon-europe.com/support/products/imagerunner/imagerunner-1730i.html"
SRC_URI="http://gdlp01.c-wss.com/gds/8/0100007658/08/${SOURCES_NAME}-05.tar.gz"
+S="${WORKDIR}/${SOURCES_NAME}/Sources/${P/-lb-${PV}/-4.10}"
# GPL-2 License inside LICENSE-EN.txt files
LICENSE="Canon-UFR-II GPL-2 MIT"
SLOT="0"
-KEYWORDS="-* ~amd64 ~x86"
-IUSE=""
+KEYWORDS="-* amd64 x86"
RDEPEND="
>=dev-libs/libxml2-2.6:2
>=gnome-base/libglade-2.4:2.0
>=net-print/cups-1.1.17
- >=x11-libs/gtk+-2.4:2
-"
-DEPEND="${DEPEND}"
-BDEPEND=""
+ >=x11-libs/gtk+-2.4:2"
+DEPEND="${RDEPEND}"
-S="${WORKDIR}/${SOURCES_NAME}/Sources/${P/-lb-${PV}/-4.10}"
+PATCHES=( "${FILESDIR}"/${P}-fno-common.patch )
pkg_setup() {
# Don't raise a fuss over pre-built binaries
@@ -39,11 +38,9 @@ pkg_setup() {
/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
- "
+ /usr/$(get_libdir)/libcanonc3pl.so.1.0.0"
QA_SONAME="
- /usr/$(get_abi_LIBDIR x86)/libcaiousb.so.1.0.0
- "
+ /usr/$(get_abi_LIBDIR x86)/libcaiousb.so.1.0.0"
}
src_unpack() {
@@ -66,6 +63,8 @@ src_prepare() {
"s:backenddir = \$(libdir)/cups/backend:backenddir = `cups-config --serverbin`/backend:" \
backend/Makefile.am || die
+ sed -i -e "s@CC=gcc@CC=$(tc-getCC)@" c3plmod_ipc/Makefile || die
+
export "LIBS=-lgtk-x11-2.0 -lgobject-2.0 -lglib-2.0 -lgmodule-2.0"
change_dir mv configure.in configure.ac
change_dir sed -i -e 's/configure.in/configure.ac/' configure.ac
@@ -77,7 +76,7 @@ src_configure() {
}
src_compile() {
- change_dir emake
+ change_dir emake AR="$(tc-getAR)"
# Cannot be moved to 'change_dir' as it doesn't need eautoreconf
cd "${S}/c3plmod_ipc" || die
@@ -116,4 +115,6 @@ src_install() {
if [[ "$(get_libdir)" != lib ]] && [[ ${SYMLINK_LIB} = yes ]]; then
dosym "../$(get_libdir)/libc3pl.so" /usr/lib/libc3pl.so
fi
+
+ find "${ED}" -name '*.la' -o -name '*.a' -delete || die
}
diff --git a/net-print/cndrvcups-common-lb/files/cndrvcups-common-lb-3.70-fno-common.patch b/net-print/cndrvcups-common-lb/files/cndrvcups-common-lb-3.70-fno-common.patch
new file mode 100644
index 000000000000..fd17f6b72b19
--- /dev/null
+++ b/net-print/cndrvcups-common-lb/files/cndrvcups-common-lb-3.70-fno-common.patch
@@ -0,0 +1,68 @@
+--- a/cngplp/src/load.c
++++ b/cngplp/src/load.c
+@@ -29,6 +29,17 @@ GModule* g_module = NULL;
+ char pre_lib_name[MAX_PATH];
+ gboolean first_load = TRUE;
+
++void (*ShowPDLDialog)(const char* name, int print);
++gboolean (*InitPDLController)(GtkWidget* main_dlg, char *printer_name, const char* print_file, gboolean first_load);
++void (*UpdatePDLData)(int id, const char* value);
++void (*UpdatePDLDataInt)(int id, int value);
++void (*ClosePDLController)();
++void (*SavePDLPrinterData)();
++void (*PrintPDLFile)();
++char* (*GetPDLData)(int id);
++int (*GetPDLDataInt)(int id, int def);
++int (*ExecPDLJobMode)();
++
+ int LoadPDL(GladeXML* main_xml, const char* print_file)
+ {
+ GtkWidget* main_dlg = NULL;
+--- a/cngplp/src/load.h
++++ b/cngplp/src/load.h
+@@ -28,15 +28,15 @@
+
+ int LoadPDL(GladeXML* main_xml, const char* print_file);
+ void UnLoadPDL();
+-void (*ShowPDLDialog)(const char* name, int print);
+-gboolean (*InitPDLController)(GtkWidget* main_dlg, char *printer_name, const char* print_file, gboolean first_load);
+-void (*UpdatePDLData)(int id, const char* value);
+-void (*UpdatePDLDataInt)(int id, int value);
+-void (*ClosePDLController)();
+-void (*SavePDLPrinterData)();
+-void (*PrintPDLFile)();
+-char* (*GetPDLData)(int id);
+-int (*GetPDLDataInt)(int id, int def);
+-int (*ExecPDLJobMode)();
++extern void (*ShowPDLDialog)(const char* name, int print);
++extern gboolean (*InitPDLController)(GtkWidget* main_dlg, char *printer_name, const char* print_file, gboolean first_load);
++extern void (*UpdatePDLData)(int id, const char* value);
++extern void (*UpdatePDLDataInt)(int id, int value);
++extern void (*ClosePDLController)();
++extern void (*SavePDLPrinterData)();
++extern void (*PrintPDLFile)();
++extern char* (*GetPDLData)(int id);
++extern int (*GetPDLDataInt)(int id, int def);
++extern int (*ExecPDLJobMode)();
+
+ #endif
+--- a/cngplp/src/mainwnd.c
++++ b/cngplp/src/mainwnd.c
+@@ -82,6 +82,17 @@ static int g_stdout_fd;
+ static void SaveOptions();
+ static void LoadOptions();
+
++extern void (*ShowPDLDialog)(const char* name, int print);
++extern gboolean (*InitPDLController)(GtkWidget* main_dlg, char *printer_name, const char* print_file, gboolean first_load);
++extern void (*UpdatePDLData)(int id, const char* value);
++extern void (*UpdatePDLDataInt)(int id, int value);
++extern void (*ClosePDLController)();
++extern void (*SavePDLPrinterData)();
++extern void (*PrintPDLFile)();
++extern char* (*GetPDLData)(int id);
++extern int (*GetPDLDataInt)(int id, int def);
++extern int (*ExecPDLJobMode)();
++
+ void DisposeMainDlg()
+ {
+ int i = 0;
diff --git a/net-print/cndrvcups-common-lb/metadata.xml b/net-print/cndrvcups-common-lb/metadata.xml
index 6f49eba8f496..85e4ed814fa2 100644
--- a/net-print/cndrvcups-common-lb/metadata.xml
+++ b/net-print/cndrvcups-common-lb/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/net-print/cndrvcups-lb/Manifest b/net-print/cndrvcups-lb/Manifest
index 225fe9561f29..b8b441732ad7 100644
--- a/net-print/cndrvcups-lb/Manifest
+++ b/net-print/cndrvcups-lb/Manifest
@@ -1,2 +1 @@
-DIST linux-UFRII-drv-v360-uken.tar.gz 116695930 BLAKE2B 75b0ed7a957fbc1677a834e67b92b7752cfa74536cb238b553f1c2c98b86399c29209240d093492ea212618c0092ad59a22f03f992462b8ef488f8ed58b51d21 SHA512 c8b2abb2d0e9ccf972241dda5154c0ddd1ba9cfe6c721c242c40c90cf29e8d0b2c6a559907318cd191232f699a42425cc4148aebcaab6aa111f1cb5439777ce7
DIST linux-UFRII-drv-v370-uken-05.tar.gz 117334511 BLAKE2B 295c7a710b0f1ee29e642b29c7b0576f68317dba93758825aa85d431129cebea174d5c2dfa67f7506fa3b18fe48d373f0dc9331ed9caabc2e3bc733946aefd97 SHA512 d83254b7f7f87c56caeaaf151d898de36f746c03ad88d427959bdeec905b9cd92a14a8ac534073473a6cefbb5e2b0be9e9faa79b500e252ecd0a0564d2312bbc
diff --git a/net-print/cndrvcups-lb/cndrvcups-lb-3.60-r2.ebuild b/net-print/cndrvcups-lb/cndrvcups-lb-3.60-r2.ebuild
deleted file mode 100644
index ec74c2e7a0ee..000000000000
--- a/net-print/cndrvcups-lb/cndrvcups-lb-3.60-r2.ebuild
+++ /dev/null
@@ -1,111 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit autotools
-
-MY_PV="$(ver_rs 1- '')"
-SOURCES_NAME="linux-UFRII-drv-v${MY_PV}-uken"
-
-DESCRIPTION="Canon UFR II / LIPSLX Printer Driver for Linux"
-HOMEPAGE="https://www.canon-europe.com/support/products/imagerunner/imagerunner-1730i.aspx"
-SRC_URI="http://gdlp01.c-wss.com/gds/0/0100009240/02/${SOURCES_NAME}.tar.gz"
-
-LICENSE="Canon-UFR-II"
-SLOT="0"
-KEYWORDS="-* amd64 x86"
-IUSE=""
-
-RDEPEND="
- >=dev-libs/libxml2-2.9.1-r4[abi_x86_32(-)]
- >=gnome-base/libglade-2.4:2.0
- >=net-print/cups-1.1.17
- ~net-print/cndrvcups-common-lb-${PV}
- >=x11-libs/gtk+-2.4:2
-"
-DEPEND="${DEPEND}"
-
-S="${WORKDIR}/${SOURCES_NAME}/Sources/${P}"
-
-MAKEOPTS+=" -j1"
-
-pkg_setup() {
- # 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/" || die
- unpack ./${P}-1.tar.gz
-}
-
-change_dir() {
- for i in pstoufr2cpca cngplp cngplp/files cpca ; do
- cd "${i}" || die
- "${@}"
- cd "${S}" || die
- done
-}
-
-src_prepare() {
- default
- 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
-
- find "${D}" -name '*.la' -delete || die
-
- insinto /usr/share/cups/model
- doins ppd/*.ppd
-
- cd "${S}/data" || die
- insinto /usr/share/caepcm
- doins *
-
- cd "${S}/libs" || die
- 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 :(, bug #????
- # Only needed with SYMLINK_LIB=yes #642138
- if [[ "$(get_libdir)" != lib ]] && [[ ${SYMLINK_LIB} = yes ]]; then
- dosym "../$(get_libdir)/libcnlbcm.so" /usr/lib/libcnlbcm.so
- fi
-}
diff --git a/net-print/cndrvcups-lb/cndrvcups-lb-3.70.ebuild b/net-print/cndrvcups-lb/cndrvcups-lb-3.70.ebuild
index b7afeb8bf4c2..213654649d2b 100644
--- a/net-print/cndrvcups-lb/cndrvcups-lb-3.70.ebuild
+++ b/net-print/cndrvcups-lb/cndrvcups-lb-3.70.ebuild
@@ -1,19 +1,21 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit autotools
+
+inherit autotools multilib
MY_PV="$(ver_rs 1- '')"
SOURCES_NAME="linux-UFRII-drv-v${MY_PV}-uken"
DESCRIPTION="Canon UFR II / LIPSLX Printer Driver for Linux"
-HOMEPAGE="https://www.canon-europe.com/support/products/imagerunner/imagerunner-1730i.aspx"
+HOMEPAGE="https://www.canon-europe.com/support/products/imagerunner/imagerunner-1730i.html"
SRC_URI="http://gdlp01.c-wss.com/gds/8/0100007658/08/${SOURCES_NAME}-05.tar.gz"
+S="${WORKDIR}/${SOURCES_NAME}/Sources/${P}"
LICENSE="Canon-UFR-II"
SLOT="0"
-KEYWORDS="-* ~amd64 ~x86"
+KEYWORDS="-* amd64 x86"
IUSE=""
RDEPEND="
@@ -23,10 +25,7 @@ RDEPEND="
~net-print/cndrvcups-common-lb-${PV}
>=x11-libs/gtk+-2.4:2
"
-DEPEND="${DEPEND}"
-BDEPEND=""
-
-S="${WORKDIR}/${SOURCES_NAME}/Sources/${P}"
+DEPEND="${RDEPEND}"
MAKEOPTS+=" -j1"
@@ -79,7 +78,7 @@ src_install() {
default
einstalldocs
- find "${D}" -name '*.la' -type f -delete || die
+ find "${ED}" -name '*.la' -type f -delete || die
insinto /usr/share/cups/model
doins ppd/*.ppd
diff --git a/net-print/cndrvcups-lb/metadata.xml b/net-print/cndrvcups-lb/metadata.xml
index 6f49eba8f496..85e4ed814fa2 100644
--- a/net-print/cndrvcups-lb/metadata.xml
+++ b/net-print/cndrvcups-lb/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/net-print/cnijfilter2/Manifest b/net-print/cnijfilter2/Manifest
index 0b046e1c3d56..e39410e68137 100644
--- a/net-print/cnijfilter2/Manifest
+++ b/net-print/cnijfilter2/Manifest
@@ -1,4 +1,2 @@
-DIST cnijfilter2-source-5.20-1.tar.gz 466507 BLAKE2B 1ca96153350a157f56dfed691a04dcbe1e3ab5462b59c0cd919316a7c54a36bbeb34cf4205132f0aa3e5a23f89eb260c35c1a3ee14ea85bc36b9e3b67cd7e3f7 SHA512 60be49d34adf9a4d2cd8337cccb36eb8c078e9712bf8043c3552f1d83c3da307badfe34fc3683c99e3234da30f4ba82e0c4a0b48ea5f78f0d66db1408bd7d495
-DIST cnijfilter2-source-5.40-1.tar.gz 817298 BLAKE2B 1088eb19c70ed9133c38b8a6da9fbc26c42d6f077fda01678fb4485c2db21a17567fab8ab5c9565ece7ea13e5fac3f7c5842e984116d6c595e7a1f19092d3461 SHA512 bb4ce18864037fae9735fcb1b2c3198fe39f8abe0caa754e457e3cb0d03767742d82ff4fddf81451215395b23eea8207a880e238558e0ea2ac5c359186ecd859
-DIST cnijfilter2-source-5.50-1.tar.gz 1129057 BLAKE2B 20208b1fa679a4303b5f47ae733224fa1346277d539e62688ecbfaa6a1a9f7b01cb4742c299ec188d59787e4175896dfe8d812f8aa936977f8168d823216b239 SHA512 9a99d0230fb9498d2b17648e58009efa5812fe5c076c11fdc6c2afeec453e355c1e3406053330e965e46be23651df6b887d0edb20eebd564554a7bf31b155186
-DIST cnijfilter2-source-5.70-1.tar.gz 1366033 BLAKE2B 0d03c4c4f4bc00ea91cc46db6554252997242dcc98ee65fe856528848843cdd6d2195e3839d8dad71f1fc722cfbb2e65730020665d9095d0a93900840659477d SHA512 3d9afe4ca6b042015898f4fc08d991a4af2c55010c9d98807a12dade01d2655f74b7e4896abeb933c93faeca954bcfdadfd6e359ee8efe5952623fc635500729
+DIST cnijfilter2-source-6.60-1.tar.gz 2775344 BLAKE2B 0207784251e70c5850da74eb76a4de16d4dc5760e91ce17fc86ee9c61cfac27c041ea3f434ecad846ee3cc93649ac627d41eaaa55d3baf2e148ad36d8e142b87 SHA512 4a0560bcd4028dfbaed0c01a34c17eef492865bae97ebe0ec092442f49401295a160a4ac39ff3869f40d01f7cd085a97d114b9c5bf511a66664c2b74fbf41864
+DIST cnijfilter2-source-6.70-1.tar.gz 3014630 BLAKE2B f1a36c1e24406c5e67bf5a024997dec1788aec77eceaa237dc678a0d55de1434c7a5ad23cda7f44b978cf01f214435afb8588d1b04dc0ab60c37d4c2f56e5fac SHA512 a6e345082eb0c6d9f80011e8e9c6edc5db63ad719c2b4953bce7d0de05493dcb8443a8a4bb88925349a2ceab64645eec91a73fee796cc363947ebe40534af5e4
diff --git a/net-print/cnijfilter2/cnijfilter2-5.20.ebuild b/net-print/cnijfilter2/cnijfilter2-5.20.ebuild
deleted file mode 100644
index a5ceae2028a2..000000000000
--- a/net-print/cnijfilter2/cnijfilter2-5.20.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools
-
-MY_P="${PN}-source-${PV}-1"
-
-DESCRIPTION="IJ Printer Driver"
-HOMEPAGE="https://www.canon.it/"
-SRC_URI="http://gdlp01.c-wss.com/gds/0/0100006900/01/${MY_P}.tar.gz"
-
-LICENSE="Canon-IJ"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-DEPEND="virtual/libusb:1
- dev-libs/libxml2
- net-print/cups"
-RDEPEND="${DEPEND}"
-
-S="${WORKDIR}"/${MY_P}
-
-PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
-
-src_prepare() {
- default
- DIRS="cmdtocanonij2 cnijbe2 lgmon3 rastertocanonij tocanonij tocnpwg"
- LIBDIR=com/libs_bin$(usex amd64 64 32)
- for d in ${DIRS}; do
- mv "${d}"/configure.{in,ac} || die
- done
- echo "AC_INIT([${PN}], [${PV}])" >> configure.ac
- echo "AM_INIT_AUTOMAKE" >> configure.ac
- echo "AC_CONFIG_SUBDIRS([${DIRS}])" >> configure.ac
- echo "AC_CONFIG_FILES([Makefile])" >> configure.ac
- echo "AC_OUTPUT()" >> configure.ac
- echo "SUBDIRS= ${DIRS}" >> Makefile.am
- sed -i \
- -e "/^CFLAGS/d" \
- */configure.ac || die
- eautoreconf
- cd ${LIBDIR}
- rm libcn*2.so || die
- ln -sf libcnbpcnclapicom2.so.5.0.0 libcnbpcnclapicom2.so || die
- ln -sf libcnnet2.so.1.2.3 libcnnet2.so || die
- cd -
-}
-
-src_configure() {
- LDFLAGS="-L"${S}"/${LIBDIR}" econf --enable-progpath="${EPREFIX}/usr/bin"
-}
-
-src_install() {
- default
- insinto /usr/share/ppd/cupsfilters
- doins ppd/*ppd
- dolib.so ${LIBDIR}/*
-}
diff --git a/net-print/cnijfilter2/cnijfilter2-5.40.ebuild b/net-print/cnijfilter2/cnijfilter2-5.40.ebuild
deleted file mode 100644
index 038cbf38f1bc..000000000000
--- a/net-print/cnijfilter2/cnijfilter2-5.40.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools
-
-MY_P="${PN}-source-${PV}-1"
-
-DESCRIPTION="IJ Printer Driver"
-HOMEPAGE="https://www.canon.it/"
-SRC_URI="http://gdlp01.c-wss.com/gds/3/0100008393/01/${MY_P}.tar.gz"
-
-LICENSE="Canon-IJ"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-DEPEND="virtual/libusb:1
- dev-libs/libxml2
- net-print/cups"
-RDEPEND="${DEPEND}"
-
-S="${WORKDIR}"/${MY_P}
-
-PATCHES=( "${FILESDIR}"/${PN}-5.20-gentoo.patch )
-
-src_prepare() {
- default
- DIRS="cmdtocanonij2 cnijbe2 lgmon3 rastertocanonij tocanonij tocnpwg"
- LIBDIR=com/libs_bin$(usex amd64 64 32)
- for d in ${DIRS}; do
- mv "${d}"/configure.{in,ac} || die
- done
- echo "AC_INIT([${PN}], [${PV}])" >> configure.ac
- echo "AM_INIT_AUTOMAKE" >> configure.ac
- echo "AC_CONFIG_SUBDIRS([${DIRS}])" >> configure.ac
- echo "AC_CONFIG_FILES([Makefile])" >> configure.ac
- echo "AC_OUTPUT()" >> configure.ac
- echo "SUBDIRS= ${DIRS}" >> Makefile.am
- sed -i \
- -e "/^CFLAGS/d" \
- */configure.ac || die
- eautoreconf
- cd ${LIBDIR}
- rm libcn*.so || die
- ln -sf libcnbpcnclapicom2.so.5.0.0 libcnbpcnclapicom2.so || die
- ln -sf libcnbpnet20.so.1.0.0 libcnbpnet20.so || die
- ln -sf libcnbpnet30.so.1.0.0 libcnbpnet30.so || die
- ln -sf libcnnet2.so.1.2.4 libcnnet2.so || die
-
- cd -
-}
-
-src_configure() {
- LDFLAGS="-L"${S}"/${LIBDIR}" econf --enable-progpath="${EPREFIX}/usr/bin"
-}
-
-src_install() {
- default
- insinto /usr/share/ppd/cupsfilters
- doins ppd/*ppd
- dolib.so ${LIBDIR}/*
-}
diff --git a/net-print/cnijfilter2/cnijfilter2-5.50.ebuild b/net-print/cnijfilter2/cnijfilter2-6.60.ebuild
index b8e27bb386da..81ab159fc828 100644
--- a/net-print/cnijfilter2/cnijfilter2-5.50.ebuild
+++ b/net-print/cnijfilter2/cnijfilter2-6.60.ebuild
@@ -1,20 +1,19 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
inherit autotools
MY_P="${PN}-source-${PV}-1"
DESCRIPTION="IJ Printer Driver"
-HOMEPAGE="https://www.canon.it/"
-SRC_URI="http://gdlp01.c-wss.com/gds/0/0100009110/01/${MY_P}.tar.gz"
+HOMEPAGE="https://www.usa.canon.com/support/p/pixma-g4270#idReference%3Dsoftware-drivers"
+SRC_URI="https://pdisp01.c-wss.com/gdl/WWUFORedirectTarget.do?id=MDEwMDAxMTc1MzAx -> cnijfilter2-source-${PV}-1.tar.gz"
LICENSE="Canon-IJ"
SLOT="0"
KEYWORDS="amd64 x86"
-IUSE=""
DEPEND="virtual/libusb:1
dev-libs/libxml2
@@ -23,12 +22,27 @@ RDEPEND="${DEPEND}"
S="${WORKDIR}"/${MY_P}
-PATCHES=( "${FILESDIR}"/${PN}-5.20-gentoo.patch )
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.50-gentoo.patch
+ "${FILESDIR}"/${PN}-5.80-cflags.patch
+ "${FILESDIR}"/${PN}-5.80-fno-common.patch
+ "${FILESDIR}"/${P}-c99.patch
+)
+
+pkg_setup() {
+ QA_PREBUILT="
+ /usr/$(get_libdir)/libcnbpnet30.so.1.0.0
+ /usr/$(get_libdir)/libcnbpcnclapicom2.so.5.0.0
+ /usr/$(get_libdir)/libcnnet2.so.1.2.5
+ /usr/$(get_libdir)/libcnbpnet20.so.1.0.0
+ /usr/bin/cnijlgmon3
+ "
+}
src_prepare() {
default
- DIRS="cmdtocanonij2 cnijbe2 lgmon3 rastertocanonij tocanonij tocnpwg"
- LIBDIR=com/libs_bin$(usex amd64 64 32)
+ DIRS="cmdtocanonij2 cmdtocanonij3 cnijbe2 lgmon3 rastertocanonij tocanonij tocnpwg"
+ LIBDIR=com/libs_bin$(usex amd64 _x86_64 _i686)
for d in ${DIRS}; do
mv "${d}"/configure.{in,ac} || die
done
@@ -40,20 +54,21 @@ src_prepare() {
echo "SUBDIRS= ${DIRS}" >> Makefile.am
sed -i \
-e "/^CFLAGS/d" \
- */configure.ac || die
+ */configure.ac \
+ cnijbe2/src/Makefile.am || die
eautoreconf
cd ${LIBDIR}
rm libcn*.so || die
ln -sf libcnbpcnclapicom2.so.5.0.0 libcnbpcnclapicom2.so || die
ln -sf libcnbpnet20.so.1.0.0 libcnbpnet20.so || die
ln -sf libcnbpnet30.so.1.0.0 libcnbpnet30.so || die
- ln -sf libcnnet2.so.1.2.4 libcnnet2.so || die
+ ln -sf libcnnet2.so.1.2.5 libcnnet2.so || die
cd -
}
src_configure() {
- LDFLAGS="-L"${S}"/${LIBDIR}" econf --enable-progpath="${EPREFIX}/usr/bin"
+ econf --enable-progpath="${EPREFIX}/usr/bin" LDFLAGS="-L${S}/${LIBDIR} ${LDFLAGS}"
}
src_install() {
diff --git a/net-print/cnijfilter2/cnijfilter2-5.70.ebuild b/net-print/cnijfilter2/cnijfilter2-6.70.ebuild
index 3b5058bc8153..b2f835c76756 100644
--- a/net-print/cnijfilter2/cnijfilter2-5.70.ebuild
+++ b/net-print/cnijfilter2/cnijfilter2-6.70.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -8,13 +8,12 @@ inherit autotools
MY_P="${PN}-source-${PV}-1"
DESCRIPTION="IJ Printer Driver"
-HOMEPAGE="https://www.canon.it/"
-SRC_URI="http://gdlp01.c-wss.com/gds/0/0100009930/01/${MY_P}.tar.gz"
+HOMEPAGE="https://www.usa.canon.com/support/p/pixma-g4270#idReference%3Dsoftware-drivers"
+SRC_URI="https://gdlp01.c-wss.com/gds/7/0100012137/01/${PN}-source-${PV}-1.tar.gz"
LICENSE="Canon-IJ"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE=""
DEPEND="virtual/libusb:1
dev-libs/libxml2
@@ -23,12 +22,27 @@ RDEPEND="${DEPEND}"
S="${WORKDIR}"/${MY_P}
-PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.50-gentoo.patch
+ "${FILESDIR}"/${PN}-5.80-cflags.patch
+ "${FILESDIR}"/${PN}-5.80-fno-common.patch
+ "${FILESDIR}"/${PN}-6.60-c99.patch
+)
+
+pkg_setup() {
+ QA_PREBUILT="
+ /usr/$(get_libdir)/libcnbpnet30.so.1.0.0
+ /usr/$(get_libdir)/libcnbpcnclapicom2.so.5.0.0
+ /usr/$(get_libdir)/libcnnet2.so.1.2.5
+ /usr/$(get_libdir)/libcnbpnet20.so.1.0.0
+ /usr/bin/cnijlgmon3
+ "
+}
src_prepare() {
default
DIRS="cmdtocanonij2 cmdtocanonij3 cnijbe2 lgmon3 rastertocanonij tocanonij tocnpwg"
- LIBDIR=com/libs_bin$(usex amd64 64 32)
+ LIBDIR=com/libs_bin$(usex amd64 _x86_64 _i686)
for d in ${DIRS}; do
mv "${d}"/configure.{in,ac} || die
done
@@ -40,20 +54,21 @@ src_prepare() {
echo "SUBDIRS= ${DIRS}" >> Makefile.am
sed -i \
-e "/^CFLAGS/d" \
- */configure.ac || die
+ */configure.ac \
+ cnijbe2/src/Makefile.am || die
eautoreconf
cd ${LIBDIR}
rm libcn*.so || die
ln -sf libcnbpcnclapicom2.so.5.0.0 libcnbpcnclapicom2.so || die
ln -sf libcnbpnet20.so.1.0.0 libcnbpnet20.so || die
ln -sf libcnbpnet30.so.1.0.0 libcnbpnet30.so || die
- ln -sf libcnnet2.so.1.2.4 libcnnet2.so || die
+ ln -sf libcnnet2.so.1.2.5 libcnnet2.so || die
cd -
}
src_configure() {
- LDFLAGS="-L"${S}"/${LIBDIR}" econf --enable-progpath="${EPREFIX}/usr/bin"
+ econf --enable-progpath="${EPREFIX}/usr/bin" LDFLAGS="-L${S}/${LIBDIR} ${LDFLAGS}"
}
src_install() {
diff --git a/net-print/cnijfilter2/files/cnijfilter2-5.20-gentoo.patch b/net-print/cnijfilter2/files/cnijfilter2-5.20-gentoo.patch
deleted file mode 100644
index be941790b995..000000000000
--- a/net-print/cnijfilter2/files/cnijfilter2-5.20-gentoo.patch
+++ /dev/null
@@ -1,50 +0,0 @@
---- a/cmdtocanonij2/filter/Makefile.am.old 2018-01-14 18:14:20.645473030 +0100
-+++ b/cmdtocanonij2/filter/Makefile.am 2018-01-14 18:14:36.078219959 +0100
-@@ -1,4 +1,4 @@
--filterdir=$(libdir)/cups/filter
-+filterdir=$(libexecdir)/cups/filter
-
- filter_PROGRAMS= cmdtocanonij2
-
---- a/cnijbe2/src/Makefile.am.old 2018-01-14 19:25:48.823470121 +0100
-+++ b/cnijbe2/src/Makefile.am 2018-01-14 19:25:59.316275741 +0100
-@@ -1,6 +1,6 @@
- ## Process this file with automake to produce Makefile.in
-
--backend_bindir = /usr/lib/cups/backend
-+backend_bindir = $(libexecdir)/cups/backend
- backend_bin_PROGRAMS = cnijbe2
- transform =
-
---- a/rastertocanonij/src/Makefile.am.old 2018-01-14 21:31:33.053307218 +0100
-+++ b/rastertocanonij/src/Makefile.am 2018-01-14 21:31:41.106166479 +0100
-@@ -1,4 +1,4 @@
--filterdir=$(libdir)/cups/filter
-+filterdir=$(libexecdir)/cups/filter
-
- filter_PROGRAMS= rastertocanonij
-
---- a/tocanonij/src/Makefile.am.old 2018-01-15 22:38:14.236460663 +0100
-+++ b/tocanonij/src/Makefile.am 2018-01-15 22:38:39.184018933 +0100
-@@ -1,7 +1,8 @@
- INCLUDES = \
- -I$(top_srcdir)/include/cncl
-
--bin_PROGRAMS= tocanonij
-+filterdir=$(libexecdir)/cups/filter
-+filter_PROGRAMS= tocanonij
-
- tocanonij_SOURCES= \
- main.c
---- a/tocnpwg/src/Makefile.am.old 2018-01-15 22:42:43.759703863 +0100
-+++ b/tocnpwg/src/Makefile.am 2018-01-15 22:43:10.442232986 +0100
-@@ -2,7 +2,8 @@
- INCLUDES = \
- @XML_2_CFLAGS@
-
--bin_PROGRAMS= tocnpwg
-+filterdir=$(libexecdir)/cups/filter
-+filter_PROGRAMS= tocnpwg
-
- tocnpwg_SOURCES= \
- main.c mkpset.c
diff --git a/net-print/cnijfilter2/files/cnijfilter2-5.80-cflags.patch b/net-print/cnijfilter2/files/cnijfilter2-5.80-cflags.patch
new file mode 100644
index 000000000000..e76176e003b1
--- /dev/null
+++ b/net-print/cnijfilter2/files/cnijfilter2-5.80-cflags.patch
@@ -0,0 +1,10 @@
+--- a/lgmon3/src/Makefile.am 2020-05-13 23:18:47.936735159 +0200
++++ b/lgmon3/src/Makefile.am 2020-05-13 23:19:12.239525072 +0200
+@@ -6,6 +6,6 @@
+
+ cnijlgmon3_SOURCES = cnijcomif.c cnijifusb.c cnijlgmon3.c cnijifnet.c keytext.c cnijifnet2.c cnijutil.c
+
+-CFLAGS = -O2 -Wall -I/usr/include/libusb-1.0 -I./common @XML2_CFLAGS@
++AM_CPPFLAGS = -I/usr/include/libusb-1.0 -I./common @XML2_CFLAGS@
+
+ cnijlgmon3_LDADD = -ldl -lusb-1.0 -lcnnet2 -lxml2 -lcnbpcnclapicom2 -lcnbpnet30
diff --git a/net-print/cnijfilter2/files/cnijfilter2-5.80-fno-common.patch b/net-print/cnijfilter2/files/cnijfilter2-5.80-fno-common.patch
new file mode 100644
index 000000000000..7374aa92fba9
--- /dev/null
+++ b/net-print/cnijfilter2/files/cnijfilter2-5.80-fno-common.patch
@@ -0,0 +1,11 @@
+--- a/lgmon3/src/cnijlgmon3.c 2020-05-16 19:28:03.585781655 +0200
++++ b/lgmon3/src/cnijlgmon3.c 2020-05-16 19:28:13.488625335 +0200
+@@ -55,7 +55,7 @@
+ int (*GET_STATUS)(char *, int, int *, int * , char *);
+ int (*GET_STATUS2)(char *, int, char *, int *, int * , char *, char *);
+ int (*GET_STATUS2_MAINTENANCE)(char *, int, char *, int *, int * , char *, char *);
+-int (*GET_PROTOCOL)(char *, size_t);
++static int (*GET_PROTOCOL)(char *, size_t);
+
+
+ int main(int argc, char *argv[])
diff --git a/net-print/cnijfilter2/files/cnijfilter2-5.70-gentoo.patch b/net-print/cnijfilter2/files/cnijfilter2-6.50-gentoo.patch
index fcb2d62ad7b5..cdc5f936824e 100644
--- a/net-print/cnijfilter2/files/cnijfilter2-5.70-gentoo.patch
+++ b/net-print/cnijfilter2/files/cnijfilter2-6.50-gentoo.patch
@@ -14,12 +14,12 @@
filter_PROGRAMS= cmdtocanonij3
---- a/cnijbe2/src/Makefile.am 2018-01-14 19:25:48.823470121 +0100
-+++ b/cnijbe2/src/Makefile.am 2018-01-14 19:25:59.316275741 +0100
+--- a/cnijbe2/src/Makefile.am 2023-02-15 19:25:48.823470121 +0100
++++ b/cnijbe2/src/Makefile.am 2023-02-15 19:25:59.316275741 +0100
@@ -1,6 +1,6 @@
## Process this file with automake to produce Makefile.in
--backend_bindir = /usr/lib/cups/backend
+-backend_bindir = $(libdir)/cups/backend
+backend_bindir = $(libexecdir)/cups/backend
backend_bin_PROGRAMS = cnijbe2
transform =
diff --git a/net-print/cnijfilter2/files/cnijfilter2-6.60-c99.patch b/net-print/cnijfilter2/files/cnijfilter2-6.60-c99.patch
new file mode 100644
index 000000000000..d328d1d1f63c
--- /dev/null
+++ b/net-print/cnijfilter2/files/cnijfilter2-6.60-c99.patch
@@ -0,0 +1,10 @@
+--- a/lgmon3/src/keytext.c 2024-02-20 07:45:11.719827112 +0100
++++ b/lgmon3/src/keytext.c 2024-02-20 07:46:15.504048256 +0100
+@@ -37,6 +37,7 @@
+ #include <unistd.h>
+ #include <libxml/parser.h> /* Ver.2.80 */
+ #include <string.h>
++#include <stdlib.h>
+
+ #include "keytext.h"
+
diff --git a/net-print/cnijfilter2/metadata.xml b/net-print/cnijfilter2/metadata.xml
index d0e866f244f8..8c0d75248cf7 100644
--- a/net-print/cnijfilter2/metadata.xml
+++ b/net-print/cnijfilter2/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>tupone@gentoo.org</email>
diff --git a/net-print/cnrdrvcups-lb/Manifest b/net-print/cnrdrvcups-lb/Manifest
index 602bcbaf74a3..38b30046937b 100644
--- a/net-print/cnrdrvcups-lb/Manifest
+++ b/net-print/cnrdrvcups-lb/Manifest
@@ -1 +1,2 @@
-DIST linux-UFRII-drv-v510-uken-08.tar.gz 106569187 BLAKE2B 46017d4e82653314e1555b32c6e3a73ae8c9c7cef95e4f70d51d62e15f26831cf0ea8d1b180503cd63a880d637621427fe6c69971b40d9ee0119ecd493772515 SHA512 dbc8b8e600ec29e73afa4ba8a760fd643d58ee2017f6c3c35e63c7f2186cf0cb675adb0ea344b0bd04d0b4fa7f13763b5ce97e8264790356134e6ded3069bf54
+DIST linux-UFRII-drv-v540-uken-08.tar.gz 188874055 BLAKE2B 150b917d20566de5658bfd46d06e2568924267a046e9083289878e0b51ab05744fefbcebd8e61694d937fd1dde769c0c8f06b6248eacebf3ac8d8706f7baa1f8 SHA512 c488fbaee081b3cd601282e737af0ce1d141a9ae940daa2335ef4da833cdb9fbdda3cc378f4e49b26700b36911dc7b142ef0665e1cacef505f91a666736e62dc
+DIST linux-UFRII-drv-v580-m17n-08.tar.gz 66915545 BLAKE2B 5b07c74079c2c5b4a8b360389d426d61026198b9f3c148098b7d32a900912a6d72951f5550896ae7b89418147637dc47fc4351bdc11775958d877c33359a9251 SHA512 650b5fce570dc464d2bd269f6671c276c064f0696170aabbace9811f28da86aeb8fe21badc0ec3d2814943911f35897aa59da26f44797943e97da36e5838409c
diff --git a/net-print/cnrdrvcups-lb/cnrdrvcups-lb-5.10.ebuild b/net-print/cnrdrvcups-lb/cnrdrvcups-lb-5.40.ebuild
index 78e55a879950..80efaecd4524 100644
--- a/net-print/cnrdrvcups-lb/cnrdrvcups-lb-5.10.ebuild
+++ b/net-print/cnrdrvcups-lb/cnrdrvcups-lb-5.40.ebuild
@@ -1,38 +1,66 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit autotools desktop flag-o-matic
+inherit autotools desktop flag-o-matic toolchain-funcs
-MY_DOWNLOAD_ID="8/0100007658/13"
+CANON_REL="08"
+DL_ID="8/0100007658/25"
MY_PV="${PV//\./}"
-DESCRIPTION="Canon UFR II / LIPSLX Printer Driver for Linux "
+DESCRIPTION="Canon UFR II / LIPSLX Printer Driver for Linux"
HOMEPAGE="https://www.canon-europe.com/support/products/imagerunner/"
-SRC_URI="http://gdlp01.c-wss.com/gds/${MY_DOWNLOAD_ID}/linux-UFRII-drv-v${MY_PV}-uken-08.tar.gz"
+SRC_URI="https://gdlp01.c-wss.com/gds/${DL_ID}/linux-UFRII-drv-v${MY_PV}-uken-${CANON_REL}.tar.gz"
LICENSE="Canon-UFR-II GPL-2 MIT"
SLOT="0"
KEYWORDS="-* amd64 x86"
IUSE=""
-DEPEND="dev-libs/libxml2:2
+DEPEND="dev-libs/atk
+ dev-libs/glib:2
+ dev-libs/libxml2:2
gnome-base/libglade:2.0
media-libs/jbigkit
+ media-libs/libjpeg-turbo
net-print/cups
- x11-libs/gtk+:2"
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:2
+ x11-libs/gtk+:3
+ x11-libs/pango"
RDEPEND="${DEPEND}
!net-print/cndrvcups-common-lb
!net-print/cndrvcups-lb"
HTML_DOCS=(
- "${WORKDIR}"/linux-UFRII-drv-v${MY_PV}-uken/Documents/README-ufr2-5.1xUK.html
+ "${WORKDIR}"/linux-UFRII-drv-v${MY_PV}-uken/Documents/README-ufr2-${PV//0}xUK.html
"${WORKDIR}"/linux-UFRII-drv-v${MY_PV}-uken/Documents/UsersGuide-ufr2-UK.html
)
S="${WORKDIR}/linux-UFRII-drv-v${MY_PV}-uken/Sources"
+common_op() {
+ local i
+ for i in backend buftool cngplp cnjbig rasterfilter; do
+ cd "${S}/cnrdrvcups-common-${PV}/${i}" ||
+ die "failed to switch dir to ${i}"
+ "${@}"
+ cd "${S}" || die "failed to switch dir back from ${i} to ${S}"
+ done
+}
+
+driver_op() {
+ local i
+ for i in cngplp cngplp/files cpca pdftocpca; do
+ cd "${S}/cnrdrvcups-lb-${PV}/${i}" ||
+ die "failed to switch dir to ${i}"
+ "${@}"
+ cd "${S}" || die "failed to switch dir back from ${i} to ${S}"
+ done
+}
+
pkg_setup() {
QA_PREBUILT="/usr/bin/cnsetuputil2
/usr/bin/cnrsdrvufr2
@@ -57,26 +85,6 @@ src_unpack() {
unpack ./${P}-1.tar.gz
}
-common_op() {
- local i
- for i in backend buftool cngplp cnjbig rasterfilter; do
- cd "${S}/cnrdrvcups-common-${PV}/${i}" ||
- die "failed to switch dir to ${i}"
- "${@}"
- cd "${S}" || die "failed to switch dir back from ${i} to ${S}"
- done
-}
-
-driver_op() {
- local i
- for i in cngplp cngplp/files cpca pdftocpca; do
- cd "${S}/cnrdrvcups-lb-${PV}/${i}" ||
- die "failed to switch dir to ${i}"
- "${@}"
- cd "${S}" || die "failed to switch dir back from ${i} to ${S}"
- done
-}
-
src_prepare() {
default
@@ -98,6 +106,11 @@ src_prepare() {
# Fix a QA issue with .desktop file,
sed -i 's/Application;Utility/Utility/g' "${S}"/cnrdrvcups-utility-${PV}/data/cnsetuputil2.desktop ||
die "Failed to modify cnsetuputil2.desktop file."
+
+ append-cflags -fcommon
+
+ # For some reason, @AR@ is defined everywhere else correctly, but not here.
+ sed -i -e "s/AR = ar/AR = $(tc-getAR)/g" ./cnrdrvcups-common-${PV}/buftool/Makefile.in || die
}
src_configure() {
@@ -118,9 +131,9 @@ src_install() {
doins "${S}"/cnrdrvcups-common-${PV}/Rule/canon-laser-printer_ufr2.usb-quirks
if use amd64; then
- cd "${S}"/lib/libs64 || die "failed to switch into libs64"
+ cd "${S}"/lib/libs64/intel/ || die "failed to switch into libs64"
elif use x86; then
- cd "${S}"/lib/libs32 || die "failed to switch into libs32"
+ cd "${S}"/lib/libs32/intel/ || die "failed to switch into libs32"
else
die "I don't know what directory to switch into!"
fi
@@ -156,7 +169,7 @@ src_install() {
dobin cnpdfdrv cnpkbidir cnpkmoduleufr2r cnrsdrvufr2 cnsetuputil2
- insinto /usr/share/caepcm/ufr2
+ insinto /usr/share/cnpkbidir
doins ./cnpkbidir_info*
insinto /usr/share/ufr2filterr
diff --git a/net-print/cnrdrvcups-lb/cnrdrvcups-lb-5.80.ebuild b/net-print/cnrdrvcups-lb/cnrdrvcups-lb-5.80.ebuild
new file mode 100644
index 000000000000..8407facad5fc
--- /dev/null
+++ b/net-print/cnrdrvcups-lb/cnrdrvcups-lb-5.80.ebuild
@@ -0,0 +1,200 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools desktop flag-o-matic toolchain-funcs
+
+CANON_REL="08"
+DL_ID="8/0100007658/25"
+MY_PV="${PV//\./}"
+
+DESCRIPTION="Canon UFR II / LIPSLX Printer Driver for Linux"
+HOMEPAGE="https://www.canon-europe.com/support/products/imagerunner/"
+SRC_URI="https://pdisp01.c-wss.com/gdl/WWUFORedirectTarget.do?id=MDEwMDAwNzY1ODM5&cmp=ABX&lang=EN -> linux-UFRII-drv-v${MY_PV}-m17n-${CANON_REL}.tar.gz"
+
+LICENSE="Canon-UFR-II GPL-2 MIT"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+IUSE=""
+
+DEPEND="dev-libs/atk
+ dev-libs/glib:2
+ dev-libs/libxml2:2
+ gnome-base/libglade:2.0
+ media-libs/jbigkit
+ media-libs/libjpeg-turbo
+ net-print/cups
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:2
+ x11-libs/gtk+:3
+ x11-libs/pango"
+RDEPEND="${DEPEND}
+ !net-print/cndrvcups-common-lb
+ !net-print/cndrvcups-lb"
+
+HTML_DOCS=(
+ "${WORKDIR}"/linux-UFRII-drv-v${MY_PV}-m17n/Documents/uk_eng/README-ufr2-${PV//0}xUK.html
+ "${WORKDIR}"/linux-UFRII-drv-v${MY_PV}-m17n/Documents/uk_eng/UsersGuide-ufr2-UK.html
+)
+
+S="${WORKDIR}/linux-UFRII-drv-v${MY_PV}-m17n/Sources"
+
+common_op() {
+ local i
+ for i in backend buftool cngplp cnjbig rasterfilter; do
+ cd "${S}/cnrdrvcups-common-${PV}/${i}" ||
+ die "failed to switch dir to ${i}"
+ "${@}"
+ cd "${S}" || die "failed to switch dir back from ${i} to ${S}"
+ done
+}
+
+driver_op() {
+ local i
+ for i in cngplp cngplp/files cpca pdftocpca; do
+ cd "${S}/cnrdrvcups-lb-${PV}/${i}" ||
+ die "failed to switch dir to ${i}"
+ "${@}"
+ cd "${S}" || die "failed to switch dir back from ${i} to ${S}"
+ done
+}
+
+pkg_setup() {
+ QA_PREBUILT="/usr/bin/cnsetuputil2
+ /usr/bin/cnrsdrvufr2
+ /usr/bin/cnpkmoduleufr2r
+ /usr/bin/cnpkbidir
+ /usr/bin/cnpdfdrv
+ /usr/$(get_libdir)/libufr2filterr.so.1.0.0
+ /usr/$(get_libdir)/libColorGearCufr2.so.2.0.0
+ /usr/$(get_libdir)/libcnlbcmr.so.1.0
+ /usr/$(get_libdir)/libcanon_slimufr2.so.1.0.0
+ /usr/$(get_libdir)/libcanonufr2r.so.1.0.0
+ /usr/$(get_libdir)/libcaiowrapufr2.so.1.0.0
+ /usr/$(get_libdir)/libcaiocnpkbidir.so.1.0.0
+ /usr/$(get_libdir)/libcaepcmufr2.so.1.0"
+
+ QA_SONAME="/usr/$(get_libdir)/libcaiocnpkbidir.so.1.0.0"
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${WORKDIR}/linux-UFRII-drv-v${MY_PV}-m17n/Sources/" || die
+ unpack ./${P}-1.05.tar.xz
+}
+
+src_prepare() {
+ default
+
+ common_op mv configure.in configure.ac || die "failed to move configure.in"
+ driver_op mv configure.in configure.ac || die "failed to move configure.in"
+
+ common_op sed -i -e 's/configure.in/configure.ac/' configure.ac || die
+ driver_op sed -i -e 's/configure.in/configure.ac/' configure.ac || die
+
+ # This should work with autoreconf
+ export "LIBS=-lgtk-x11-2.0 -lgobject-2.0 -lglib-2.0 -lgmodule-2.0"
+
+ # Other components already depend on compiled product
+ append-ldflags -L"${S}/cnrdrvcups-common-${PV}/buftool"
+
+ common_op eautoreconf
+ driver_op eautoreconf
+
+ # Fix a QA issue with .desktop file,
+ sed -i 's/Application;Utility/Utility/g' "${S}"/cnrdrvcups-utility-${PV}/data/cnsetuputil2.desktop ||
+ die "Failed to modify cnsetuputil2.desktop file."
+
+ append-cflags -fcommon
+
+ # For some reason, @AR@ is defined everywhere else correctly, but not here.
+ sed -i -e "s/AR = ar/AR = $(tc-getAR)/g" ./cnrdrvcups-common-${PV}/buftool/Makefile.in || die
+}
+
+src_configure() {
+ common_op econf
+ driver_op econf
+}
+
+src_compile() {
+ common_op emake
+ driver_op emake
+}
+
+src_install() {
+ common_op emake DESTDIR="${D}" install COMMON_SUFFIX=2
+ driver_op emake DESTDIR="${D}" install COMMON_SUFFIX=2
+
+ insinto /usr/share/cups
+ doins "${S}"/cnrdrvcups-common-${PV}/Rule/canon-laser-printer.usb-quirks
+
+ if use amd64; then
+ cd "${S}"/lib/libs64/intel/ || die "failed to switch into libs64"
+ elif use x86; then
+ cd "${S}"/lib/libs32/intel/ || die "failed to switch into libs32"
+ else
+ die "I don't know what directory to switch into!"
+ fi
+
+ dolib.so libcaepcmufr2.so.1.0 libcaiocnpkbidir.so.1.0.0 \
+ libcaiowrapufr2.so.1.0.0 libcanonufr2r.so.1.0.0 \
+ libcanon_slimufr2.so.1.0.0 libcnlbcmr.so.1.0 \
+ libColorGearCufr2.so.2.0.0 libufr2filterr.so.1.0.0
+
+ dosym libcaepcmufr2.so.1.0 /usr/$(get_libdir)/libcaepcmufr2.so
+ dosym libcaepcmufr2.so.1.0 /usr/$(get_libdir)/libcaepcmufr2.so.1
+
+ dosym libcaiocnpkbidir.so.1.0.0 /usr/$(get_libdir)/libcaiocnpkbidir.so
+ dosym libcaiocnpkbidir.so.1.0.0 /usr/$(get_libdir)/libcaiocnpkbidir.so.1
+
+ dosym libcaiowrapufr2.so.1.0.0 /usr/$(get_libdir)/libcaiowrapufr2.so
+ dosym libcaiowrapufr2.so.1.0.0 /usr/$(get_libdir)/libcaiowrapufr2.so.1
+
+ dosym libcanonufr2r.so.1.0.0 /usr/$(get_libdir)/libcanonufr2r.so
+ dosym libcanonufr2r.so.1.0.0 /usr/$(get_libdir)/libcanonufr2r.so.1
+
+ dosym libcanon_slimufr2.so.1.0.0 /usr/$(get_libdir)/libcanon_slimufr2.so
+ dosym libcanon_slimufr2.so.1.0.0 /usr/$(get_libdir)/libcanon_slimufr2.so.1
+
+ dosym libcnlbcmr.so.1.0 /usr/$(get_libdir)/libcnlbcmr.so
+ dosym libcnlbcmr.so.1.0 /usr/$(get_libdir)/libcnlbcmr.so.1
+
+ dosym libColorGearCufr2.so.2.0.0 /usr/$(get_libdir)/libColorGearCufr2.so
+ dosym libColorGearCufr2.so.2.0.0 /usr/$(get_libdir)/libColorGearCufr2.so.2
+
+ dosym libufr2filterr.so.1.0.0 /usr/$(get_libdir)/libufr2filterr.so
+ dosym libufr2filterr.so.1.0.0 /usr/$(get_libdir)/libufr2filterr.so.1
+
+ dobin cnpdfdrv cnpkbidir cnpkmoduleufr2r cnrsdrvufr2 cnsetuputil2
+
+ insinto /usr/share/cnpkbidir
+ doins ./cnpkbidir_info*
+
+ insinto /usr/share/ufr2filterr
+ doins ./ThLB*
+
+ cd "${S}" || die "Failed to switch back into ${S} during installation."
+
+ dosym ../../../$(get_libdir)/cups/backend/cnusb /usr/libexec/cups/backend/cnusb
+ dosym ../../../$(get_libdir)/cups/filter/pdftocpca /usr/libexec/cups/filter/pdftocpca
+ dosym ../../../$(get_libdir)/cups/filter/rastertoufr2 /usr/libexec/cups/filter/rastertoufr2
+
+ insinto /usr/share/caepcm/ufr2
+ doins -r "${S}"/lib/data/ufr2/
+
+ insinto /usr/share/cups/model
+ doins ${P}/ppd/*.ppd
+
+ domenu ./cnrdrvcups-utility-${PV}/data/cnsetuputil2.desktop
+ doicon ./cnrdrvcups-utility-${PV}/data/cnsetuputil.png
+
+ einstalldocs
+ newdoc "${S}"/cnrdrvcups-common-${PV}/README README.common
+ newdoc "${S}"/cnrdrvcups-common-${PV}/cngplp/README README.cngplp.common
+ newdoc "${S}"/cnrdrvcups-lb-${PV}/README README.lb
+ newdoc "${S}"/cnrdrvcups-lb-${PV}/cngplp/README README.cngplp.driver
+
+ find "${D}" -name '*.la' -type f -delete || die
+}
diff --git a/net-print/cnrdrvcups-lb/metadata.xml b/net-print/cnrdrvcups-lb/metadata.xml
index 6b0a0fb3a729..bef24d2c2337 100644
--- a/net-print/cnrdrvcups-lb/metadata.xml
+++ b/net-print/cnrdrvcups-lb/metadata.xml
@@ -1,8 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>juippis@gentoo.org</email>
- <name>Joonas Niilola</name>
- </maintainer>
+ <!-- maintainer-needed -->
</pkgmetadata>
diff --git a/net-print/cups-bjnp/Manifest b/net-print/cups-bjnp/Manifest
index 08dfeca58389..12e3eea53a5b 100644
--- a/net-print/cups-bjnp/Manifest
+++ b/net-print/cups-bjnp/Manifest
@@ -1,3 +1 @@
-DIST cups-bjnp-1.1.tar.gz 139838 BLAKE2B 6613ca080afe2ec2cb72cf695aa4144ef16225d2e24077d209cd65e584e5d134b65224c93c636e3289949520787308406debedc3cc4506fb7f573685df02957a SHA512 9a1558c7f2530e14ecab3143e0e03239d430d261486309cbf12f28a43b6358e704f60fdbcfeb0150b3ca80d31bf03b0c628179fbf37d313ca23d2f6e1d28265d
-DIST cups-bjnp-1.2.1.tar.gz 140536 BLAKE2B a47fac5c9550de024b817401b7844c5f1812b9105f2e79534b78a840e5ac394ad5ac8eb5e8eab15cbadcf24c56f2fb5070d8c4229c10dbb549786189a5aea2cd SHA512 c14152592255f9092d543f00f67a8fdd71cc9b27bc12cc6e66d3d94e1112920feafba35b7f7a830b07666b9b2d8d070f52757a3e150195e71ec989985a74d489
-DIST cups-bjnp-2.0.tar.gz 140617 BLAKE2B 7d280346a6f29a3530b605d8e259007c004dc5c53386904db93e5302303a158b8a5a4ed86e8cf72692fb4d64f4b041625b224a1325d5c77e4ecc82cd59bfa0d2 SHA512 60b7c58828c736eab6986896730db7635d3364e94d6d7c4992eb7f49f22ced6a5643153c069d3823d4dc663ee7de8748b8e8ec527e04afc65389c521b791c8d0
+DIST cups-bjnp-2.0.3.tar.gz 140764 BLAKE2B 4b8d3c823abd9057be91a246b463fd17a26362c7f11959989749e023d3bdb70a0cba444b86d5f2302f6da13324f7fb6f6c84970933919be67c023e03842b124a SHA512 57db45e85ca016b823563ed6a2aa07a32b9fb733fc01af0aa488bd2fc3cf02388ae1dfb63234ce80d64616dd97209153bb8c047ff549405e7bfdcca0c57fcd5c
diff --git a/net-print/cups-bjnp/cups-bjnp-1.1.ebuild b/net-print/cups-bjnp/cups-bjnp-1.1.ebuild
deleted file mode 100644
index ad806f5cf6c4..000000000000
--- a/net-print/cups-bjnp/cups-bjnp-1.1.ebuild
+++ /dev/null
@@ -1,16 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-DESCRIPTION="CUPS backend for the canon printers using the proprietary USB over IP BJNP protocol"
-HOMEPAGE="https://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
deleted file mode 100644
index d720b507f029..000000000000
--- a/net-print/cups-bjnp/cups-bjnp-1.2.1.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-DESCRIPTION="CUPS backend for the canon printers using the proprietary USB over IP BJNP protocol"
-HOMEPAGE="https://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.3-r1.ebuild b/net-print/cups-bjnp/cups-bjnp-2.0.3-r1.ebuild
new file mode 100644
index 000000000000..456c3250d40a
--- /dev/null
+++ b/net-print/cups-bjnp/cups-bjnp-2.0.3-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="CUPS backend for canon printers using proprietary USB over IP BJNP protocol"
+HOMEPAGE="https://sourceforge.net/projects/cups-bjnp/"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc ~ppc64 x86"
+
+DEPEND="net-print/cups"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.0.3-configure-clang16.patch
+)
+
+src_prepare() {
+ default
+
+ # Clang 16
+ eautoreconf
+}
+
+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.3.ebuild
index 794ea7b24fb9..4b4d932b15b9 100644
--- a/net-print/cups-bjnp/cups-bjnp-2.0.ebuild
+++ b/net-print/cups-bjnp/cups-bjnp-2.0.3.ebuild
@@ -1,16 +1,15 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=7
-DESCRIPTION="CUPS backend for the canon printers using the proprietary USB over IP BJNP protocol"
+DESCRIPTION="CUPS backend for canon printers using proprietary USB over IP BJNP protocol"
HOMEPAGE="https://sourceforge.net/projects/cups-bjnp/"
-SRC_URI="mirror://sourceforge/${PN}/${PV}/${P}.tar.gz"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${PV}/${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/files/cups-bjnp-2.0.3-configure-clang16.patch b/net-print/cups-bjnp/files/cups-bjnp-2.0.3-configure-clang16.patch
new file mode 100644
index 000000000000..e1d37445f89d
--- /dev/null
+++ b/net-print/cups-bjnp/files/cups-bjnp-2.0.3-configure-clang16.patch
@@ -0,0 +1,34 @@
+https://sourceforge.net/p/cups-bjnp/patches/5/
+--- a/acinclude.m4
++++ b/acinclude.m4
+@@ -25,9 +25,9 @@
+ #include <sys/socket.h> ], [
+ /* AF_INET6 available check */
+ if (socket(AF_INET6, SOCK_STREAM, 0) < 0)
+- exit(1);
++ return 1;
+ else
+- exit(0);
++ return 0;
+ ],[
+ AC_MSG_RESULT(yes)
+ AC_DEFINE([ENABLE_IPV6], 1, [Define to 1 if the system supports IPv6])
+@@ -47,7 +47,7 @@
+ /* test if the ss_family member exists in struct sockaddr_storage */
+ struct sockaddr_storage ss;
+ ss.ss_family = AF_INET;
+- exit (0);
++ return 0;
+ ], [
+ AC_MSG_RESULT(yes)
+ AC_DEFINE([HAS_SS_FAMILY], 1, [Define to 1 if struct sockaddr_storage has an ss_family member])
+@@ -59,7 +59,7 @@
+ /* test if the __ss_family member exists in struct sockaddr_storage */
+ struct sockaddr_storage ss;
+ ss.__ss_family = AF_INET;
+- exit (0);
++ return 0;
+ ], [
+ AC_MSG_RESULT([no, but __ss_family exists])
+ AC_DEFINE([HAS___SS_FAMILY], 1, [Define to 1 if struct sockaddr_storage has __ss_family instead of ss_family])
+
diff --git a/net-print/cups-bjnp/metadata.xml b/net-print/cups-bjnp/metadata.xml
index 1995e3ca80f4..e6ef1a972c06 100644
--- a/net-print/cups-bjnp/metadata.xml
+++ b/net-print/cups-bjnp/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>printing@gentoo.org</email>
diff --git a/net-print/cups-browsed/Manifest b/net-print/cups-browsed/Manifest
new file mode 100644
index 000000000000..e9a2ce2398ba
--- /dev/null
+++ b/net-print/cups-browsed/Manifest
@@ -0,0 +1 @@
+DIST cups-browsed-2.0.0.tar.xz 426132 BLAKE2B e1724c03302d61cf131c8886a95f6ad8f0236b134f1deaadb783fa185141b83cd8ac5c5d993ded37d04c7fd806c5cde157a792a90a2f372075f24a5bd2423dc5 SHA512 592493ef82c65b2418b86b555c4d24bdf352f78516993a021d106240b8c399fd9f4fcc27e396e895d94da889a97f2bbc5e96bfa92c58c8be80802ee8df43db80
diff --git a/net-print/cups-browsed/cups-browsed-2.0.0.ebuild b/net-print/cups-browsed/cups-browsed-2.0.0.ebuild
new file mode 100644
index 000000000000..20aedcf5cb6b
--- /dev/null
+++ b/net-print/cups-browsed/cups-browsed-2.0.0.ebuild
@@ -0,0 +1,82 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit systemd
+
+DESCRIPTION="helper daemon to browse for remote CUPS queues and IPP network printers"
+HOMEPAGE="https://github.com/OpenPrinting/cups-browsed"
+SRC_URI="https://github.com/OpenPrinting/cups-browsed/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="ldap test zeroconf"
+KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
+
+RDEPEND="
+ dev-libs/glib:2
+ >=net-print/cups-2
+ >=net-print/cups-filters-2.0.0
+ ldap? ( net-nds/openldap:= )
+ test? ( net-print/cups[zeroconf] )
+ zeroconf? ( net-dns/avahi[dbus] )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-util/gdbus-codegen
+ >=sys-devel/gettext-0.18.3
+ virtual/pkgconfig
+"
+
+# The tests are new since the split out of cups-filters. Actually running them
+# seems to be challenging. You need:
+# - cups tools that are USE-optional
+# - running avahi-daemon (as root!)
+# - disable portage's pid-sandbox, which interferes with avahi
+# - ipptool still fails to connect to port 8xxx
+#
+# If anything fails, a `while true` loop fails to successfully launch and break
+# out of the loop, leading to a hang. Until there's an obvious recipe for
+# successfully running the tests, restrict it.
+RESTRICT="test"
+
+PATCHES=(
+ "${FILESDIR}"/0001-cups-browsed.c-Fix-build-with-avahi-disabled-20.patch
+)
+
+src_configure() {
+ local myeconfargs=(
+ --localstatedir="${EPREFIX}"/var
+ --with-browseremoteprotocols=DNSSD,CUPS
+ --with-cups-rundir="${EPREFIX}"/run/cups
+ --with-rcdir=no
+
+ $(use_enable ldap)
+ $(use_enable zeroconf avahi)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_test() {
+ # Requires avahi running. Hangs forever if not available.
+ avahi-daemon --check 2>/dev/null || die "no running avahi daemon found, cannot run tests"
+
+ default
+}
+
+src_install() {
+ default
+
+ 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}"/daemon/cups-browsed.service || die
+ fi
+
+ doinitd "${T}"/cups-browsed
+ systemd_dounit "${S}"/daemon/cups-browsed.service
+
+}
diff --git a/net-print/cups-browsed/files/0001-cups-browsed.c-Fix-build-with-avahi-disabled-20.patch b/net-print/cups-browsed/files/0001-cups-browsed.c-Fix-build-with-avahi-disabled-20.patch
new file mode 100644
index 000000000000..f72d3919c037
--- /dev/null
+++ b/net-print/cups-browsed/files/0001-cups-browsed.c-Fix-build-with-avahi-disabled-20.patch
@@ -0,0 +1,34 @@
+Upstream: https://github.com/OpenPrinting/cups-browsed/commit/08af74bfbf9aa8ccab45a2ee74e95951839756ba.patch
+From 08af74bfbf9aa8ccab45a2ee74e95951839756ba Mon Sep 17 00:00:00 2001
+From: Timo Gurr <timo.gurr@gmail.com>
+Date: Wed, 27 Sep 2023 13:01:46 +0200
+Subject: [PATCH] cups-browsed.c: Fix build with avahi disabled (#20)
+
+Fixes #19
+---
+ daemon/cups-browsed.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/daemon/cups-browsed.c b/daemon/cups-browsed.c
+index b06461b4..c1e64fab 100644
+--- a/daemon/cups-browsed.c
++++ b/daemon/cups-browsed.c
+@@ -400,6 +400,7 @@ typedef struct pagesize_count_s
+ int count;
+ } pagesize_count_t;
+
++#ifdef HAVE_AVAHI
+ typedef struct resolver_args_s
+ {
+ AvahiIfIndex interface;
+@@ -414,6 +415,7 @@ typedef struct resolver_args_s
+ AvahiLookupResultFlags flags;
+ void* userdata;
+ } resolver_args_t;
++#endif // HAVE_AVAHI
+
+ typedef struct create_args_s
+ {
+--
+2.41.0
+
diff --git a/net-print/cups-filters/files/cups-browsed.init.d-r1 b/net-print/cups-browsed/files/cups-browsed.init.d
index dddfe7bfb003..4fea546a05ca 100644
--- a/net-print/cups-filters/files/cups-browsed.init.d-r1
+++ b/net-print/cups-browsed/files/cups-browsed.init.d
@@ -1,6 +1,6 @@
#!/sbin/openrc-run
-pidfile="/var/run/cups-browsed.pid"
+pidfile="/run/cups-browsed.pid"
command="/usr/sbin/cups-browsed"
command_background="true"
diff --git a/net-print/cups-browsed/metadata.xml b/net-print/cups-browsed/metadata.xml
new file mode 100644
index 000000000000..1b9a77a07ab0
--- /dev/null
+++ b/net-print/cups-browsed/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>printing@gentoo.org</email>
+ <name>Gentoo Printing Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">OpenPrinting/cups-browsed</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-print/cups-filters/Manifest b/net-print/cups-filters/Manifest
index 589863db56fe..3e7f08806c56 100644
--- a/net-print/cups-filters/Manifest
+++ b/net-print/cups-filters/Manifest
@@ -1,5 +1,2 @@
-DIST cups-filters-1.25.11.tar.xz 1482792 BLAKE2B 67801904dbe025933d1209817e23ff74b661b35c3af560081f12d4f9a26102e009bac9d4741e15dc257dd477967b18ae23911647f8f56b361e9f8d51b0d619f2 SHA512 67e7c624952b5e2db33a698ac1287a3448a4787fa28000cefc5a982c2fa18a4f56e11e3ba65da8a6e565a53a193c6eb31ba1867ad36ca8dc7e61250f11232681
-DIST cups-filters-1.25.13.tar.xz 1485860 BLAKE2B 03fbbbefdd36e8f619fabf17e6e13d051f48f68f87260747a181f6976ff88728d7d01b646227cd5f054e0321f6fe0e64e4c6b1bdba631d9d703304ad98a625eb SHA512 4b5ef647870235436276db68f3ef1879b578807338a025100a1d43115a7330a8f506be631df9c43edb2f1ec15f9a42f15f7cdc725bb5d39612b37bae04631611
-DIST cups-filters-1.26.2.tar.xz 1490192 BLAKE2B 6bc5033c648e42a4590a941fd089c3bf3a901a36e26f12b3cdc892ea41943071903b2df2ef5730b7948270f4f59419083c9423af9482e032958360144fb04e9b SHA512 59a5eaba00e0f384f2b1498e58ea3d7272e42923a69eaa0c107ac103dc539c9bf14a94b7a91a73e7185d8a347b4ac7f4a7a655b1ffc373983da807c582e10264
-DIST cups-filters-1.27.1.tar.xz 1492256 BLAKE2B 30e4915bfc9a4f308defdcf13acc246330499008648edbce4df3efcf29fc960ac2c9a868ebe7cafcffb16b07763a2235ddd3d29a849ea18892b8da1d0f167775 SHA512 3fde635735138fa5ef511466b07f396f96860efcc51d9a01f5b95e86fc71ef48b9d17ba1bbe2eeb29585c3afc8bf26370b8f07df76a3adea2335be90e3fdb91b
-DIST cups-filters-1.27.2.tar.xz 1493220 BLAKE2B 4c767d114e59bc94a976056cbb5456464464a4226072b4448bc0de63cfb06b28023f4ef3857f6eee32bb2c1b13f9abc2b576557c6bb6328191af781ba3d680a6 SHA512 c0e1456dd3f512ae2215e566f853e47b66de46d0d1301fc5a6f3674ac7d1ddb03c3bb236b0419b20168742076381c58581cc3e582cf7abf76139367d549a6c46
+DIST cups-filters-1.28.17.tar.xz 1516052 BLAKE2B 87258391901d55d9e59b06d54603d014e54d224a373529bd70fcd38cded9dc96c88ca73bcea63d7633c065caea3f9e3274cd450aec5f1bd90130d9a88c0d3421 SHA512 320544a48206165581adafb28dbef58f39c66bebd3641be3d180a692605349d9e6af6d464044db9f7bda17a67f4a079370d8cc880cd7873d684b2209882deb35
+DIST cups-filters-2.0.0.tar.xz 447648 BLAKE2B be5e2aab4eb921aa67bfcc93aa5f95a9f1fe1a269ed73d18273a0e9a3e816187e9e32750ba6521c3ab083c3c7b7a60bb1fa679e16d4a5917f911a4ba8d4b7207 SHA512 fc8ba3bbf92d5ede295884023d1c42422c4c250dbbf21c948f160a04ded3259784df4bd17eea64492f9417f866e566be1a9fcde47d29655cd4204ef4cc7af134
diff --git a/net-print/cups-filters/cups-filters-1.25.11.ebuild b/net-print/cups-filters/cups-filters-1.25.11.ebuild
deleted file mode 100644
index a804cc5230b5..000000000000
--- a/net-print/cups-filters/cups-filters-1.25.11.ebuild
+++ /dev/null
@@ -1,139 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-GENTOO_DEPEND_ON_PERL=no
-
-inherit perl-module systemd flag-o-matic
-
-if [[ "${PV}" == "9999" ]] ; then
- inherit autotools git-r3
- EGIT_REPO_URI="https://github.com/OpenPrinting/cups-filters.git"
-else
- SRC_URI="http://www.openprinting.org/download/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~m68k-mint"
-fi
-DESCRIPTION="Cups filters"
-HOMEPAGE="https://wiki.linuxfoundation.org/openprinting/cups-filters"
-
-LICENSE="MIT GPL-2"
-SLOT="0"
-IUSE="dbus +foomatic ipp_autosetup jpeg ldap pclm pdf perl png +postscript static-libs test tiff zeroconf"
-
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=app-text/poppler-0.32:=[cxx,jpeg?,lcms,tiff?,utils]
- >=app-text/qpdf-8.3.0:=
- dev-libs/glib: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 )
- ldap? ( net-nds/openldap )
- pdf? ( app-text/mupdf )
- perl? ( dev-lang/perl:= )
- png? ( media-libs/libpng:0= )
- postscript? ( >=app-text/ghostscript-gpl-9.09[cups] )
- tiff? ( media-libs/tiff:0 )
- zeroconf? ( net-dns/avahi[dbus] )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- dev-util/gdbus-codegen
- >=sys-devel/gettext-0.18.3
- virtual/pkgconfig
- test? ( media-fonts/dejavu )
-"
-
-src_prepare() {
- default
- [[ "${PV}" == "9999" ]] && eautoreconf
-
- # Bug #626800
- append-cxxflags -std=c++11
-}
-
-src_configure() {
- local myeconfargs=(
- --enable-imagefilters
- --localstatedir="${EPREFIX}"/var
- --with-browseremoteprotocols=DNSSD,CUPS
- --with-cups-rundir="${EPREFIX}"/run/cups
- --with-fontdir="fonts/conf.avail"
- --with-pdftops=pdftops
- --with-rcdir=no
- --without-php
- $(use_enable dbus)
- $(use_enable foomatic)
- $(use_enable ipp_autosetup auto-setup-driverless)
- $(use_enable ldap)
- $(use_enable pclm)
- $(use_enable pdf mutool)
- $(use_enable postscript ghostscript)
- $(use_enable static-libs static)
- $(use_enable zeroconf avahi)
- $(use_with jpeg)
- $(use_with png)
- $(use_with tiff)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_compile() {
- 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
-
- if use postscript; then
- # workaround: some printer drivers still require pstoraster and pstopxl, bug #383831
- dosym gstoraster /usr/libexec/cups/filter/pstoraster
- dosym gstopxl /usr/libexec/cups/filter/pstopxl
- fi
-
- find "${ED}" \( -name "*.a" -o -name "*.la" \) -delete || die
-
- cp "${FILESDIR}"/cups-browsed.init.d-r1 "${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
-
- doinitd "${T}"/cups-browsed
- systemd_dounit "${S}/utils/cups-browsed.service"
-}
-
-src_test() {
- emake check
-}
-
-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.25.13.ebuild b/net-print/cups-filters/cups-filters-1.25.13.ebuild
deleted file mode 100644
index cc938610ec4f..000000000000
--- a/net-print/cups-filters/cups-filters-1.25.13.ebuild
+++ /dev/null
@@ -1,139 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-GENTOO_DEPEND_ON_PERL=no
-
-inherit perl-module systemd flag-o-matic
-
-if [[ "${PV}" == "9999" ]] ; then
- inherit autotools git-r3
- EGIT_REPO_URI="https://github.com/OpenPrinting/cups-filters.git"
-else
- SRC_URI="http://www.openprinting.org/download/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~m68k-mint"
-fi
-DESCRIPTION="Cups filters"
-HOMEPAGE="https://wiki.linuxfoundation.org/openprinting/cups-filters"
-
-LICENSE="MIT GPL-2"
-SLOT="0"
-IUSE="dbus +foomatic ipp_autosetup jpeg ldap pclm pdf perl png +postscript static-libs test tiff zeroconf"
-
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=app-text/poppler-0.32:=[cxx,jpeg?,lcms,tiff?,utils]
- >=app-text/qpdf-8.3.0:=
- dev-libs/glib: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 )
- ldap? ( net-nds/openldap )
- pdf? ( app-text/mupdf )
- perl? ( dev-lang/perl:= )
- png? ( media-libs/libpng:0= )
- postscript? ( >=app-text/ghostscript-gpl-9.09[cups] )
- tiff? ( media-libs/tiff:0 )
- zeroconf? ( net-dns/avahi[dbus] )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- dev-util/gdbus-codegen
- >=sys-devel/gettext-0.18.3
- virtual/pkgconfig
- test? ( media-fonts/dejavu )
-"
-
-src_prepare() {
- default
- [[ "${PV}" == "9999" ]] && eautoreconf
-
- # Bug #626800
- append-cxxflags -std=c++11
-}
-
-src_configure() {
- local myeconfargs=(
- --enable-imagefilters
- --localstatedir="${EPREFIX}"/var
- --with-browseremoteprotocols=DNSSD,CUPS
- --with-cups-rundir="${EPREFIX}"/run/cups
- --with-fontdir="fonts/conf.avail"
- --with-pdftops=pdftops
- --with-rcdir=no
- --without-php
- $(use_enable dbus)
- $(use_enable foomatic)
- $(use_enable ipp_autosetup auto-setup-driverless)
- $(use_enable ldap)
- $(use_enable pclm)
- $(use_enable pdf mutool)
- $(use_enable postscript ghostscript)
- $(use_enable static-libs static)
- $(use_enable zeroconf avahi)
- $(use_with jpeg)
- $(use_with png)
- $(use_with tiff)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_compile() {
- 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
-
- if use postscript; then
- # workaround: some printer drivers still require pstoraster and pstopxl, bug #383831
- dosym gstoraster /usr/libexec/cups/filter/pstoraster
- dosym gstopxl /usr/libexec/cups/filter/pstopxl
- fi
-
- find "${ED}" \( -name "*.a" -o -name "*.la" \) -delete || die
-
- cp "${FILESDIR}"/cups-browsed.init.d-r1 "${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
-
- doinitd "${T}"/cups-browsed
- systemd_dounit "${S}/utils/cups-browsed.service"
-}
-
-src_test() {
- emake check
-}
-
-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.26.2.ebuild b/net-print/cups-filters/cups-filters-1.26.2.ebuild
deleted file mode 100644
index 7d3a3240e736..000000000000
--- a/net-print/cups-filters/cups-filters-1.26.2.ebuild
+++ /dev/null
@@ -1,139 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-GENTOO_DEPEND_ON_PERL=no
-
-inherit perl-module systemd flag-o-matic
-
-if [[ "${PV}" == "9999" ]] ; then
- inherit autotools git-r3
- EGIT_REPO_URI="https://github.com/OpenPrinting/cups-filters.git"
-else
- SRC_URI="http://www.openprinting.org/download/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~m68k-mint"
-fi
-DESCRIPTION="Cups filters"
-HOMEPAGE="https://wiki.linuxfoundation.org/openprinting/cups-filters"
-
-LICENSE="MIT GPL-2"
-SLOT="0"
-IUSE="dbus +foomatic ipp_autosetup jpeg ldap pclm pdf perl png +postscript static-libs test tiff zeroconf"
-
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=app-text/poppler-0.32:=[cxx,jpeg?,lcms,tiff?,utils]
- >=app-text/qpdf-8.3.0:=
- dev-libs/glib: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 )
- ldap? ( net-nds/openldap )
- pdf? ( app-text/mupdf )
- perl? ( dev-lang/perl:= )
- png? ( media-libs/libpng:0= )
- postscript? ( >=app-text/ghostscript-gpl-9.09[cups] )
- tiff? ( media-libs/tiff:0 )
- zeroconf? ( net-dns/avahi[dbus] )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- dev-util/gdbus-codegen
- >=sys-devel/gettext-0.18.3
- virtual/pkgconfig
- test? ( media-fonts/dejavu )
-"
-
-src_prepare() {
- default
- [[ "${PV}" == "9999" ]] && eautoreconf
-
- # Bug #626800
- append-cxxflags -std=c++11
-}
-
-src_configure() {
- local myeconfargs=(
- --enable-imagefilters
- --localstatedir="${EPREFIX}"/var
- --with-browseremoteprotocols=DNSSD,CUPS
- --with-cups-rundir="${EPREFIX}"/run/cups
- --with-fontdir="fonts/conf.avail"
- --with-pdftops=pdftops
- --with-rcdir=no
- --without-php
- $(use_enable dbus)
- $(use_enable foomatic)
- $(use_enable ipp_autosetup auto-setup-driverless)
- $(use_enable ldap)
- $(use_enable pclm)
- $(use_enable pdf mutool)
- $(use_enable postscript ghostscript)
- $(use_enable static-libs static)
- $(use_enable zeroconf avahi)
- $(use_with jpeg)
- $(use_with png)
- $(use_with tiff)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_compile() {
- 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
-
- if use postscript; then
- # workaround: some printer drivers still require pstoraster and pstopxl, bug #383831
- dosym gstoraster /usr/libexec/cups/filter/pstoraster
- dosym gstopxl /usr/libexec/cups/filter/pstopxl
- fi
-
- find "${ED}" \( -name "*.a" -o -name "*.la" \) -delete || die
-
- cp "${FILESDIR}"/cups-browsed.init.d-r1 "${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
-
- doinitd "${T}"/cups-browsed
- systemd_dounit "${S}/utils/cups-browsed.service"
-}
-
-src_test() {
- emake check
-}
-
-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.27.2.ebuild b/net-print/cups-filters/cups-filters-1.27.2.ebuild
deleted file mode 100644
index 6cb600e6a3ad..000000000000
--- a/net-print/cups-filters/cups-filters-1.27.2.ebuild
+++ /dev/null
@@ -1,138 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-GENTOO_DEPEND_ON_PERL=no
-
-inherit perl-module systemd flag-o-matic
-
-if [[ "${PV}" == "9999" ]] ; then
- inherit autotools git-r3
- EGIT_REPO_URI="https://github.com/OpenPrinting/cups-filters.git"
-else
- SRC_URI="http://www.openprinting.org/download/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~m68k-mint"
-fi
-DESCRIPTION="Cups filters"
-HOMEPAGE="https://wiki.linuxfoundation.org/openprinting/cups-filters"
-
-LICENSE="MIT GPL-2"
-SLOT="0"
-IUSE="dbus +foomatic jpeg ldap pclm pdf perl png +postscript static-libs test tiff zeroconf"
-
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=app-text/poppler-0.32:=[cxx,jpeg?,lcms,tiff?,utils]
- >=app-text/qpdf-8.3.0:=
- dev-libs/glib: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 )
- ldap? ( net-nds/openldap )
- pdf? ( app-text/mupdf )
- perl? ( dev-lang/perl:= )
- png? ( media-libs/libpng:0= )
- postscript? ( >=app-text/ghostscript-gpl-9.09[cups] )
- tiff? ( media-libs/tiff:0 )
- zeroconf? ( net-dns/avahi[dbus] )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- dev-util/gdbus-codegen
- >=sys-devel/gettext-0.18.3
- virtual/pkgconfig
- test? ( media-fonts/dejavu )
-"
-
-src_prepare() {
- default
- [[ "${PV}" == "9999" ]] && eautoreconf
-
- # Bug #626800
- append-cxxflags -std=c++11
-}
-
-src_configure() {
- local myeconfargs=(
- --enable-imagefilters
- --localstatedir="${EPREFIX}"/var
- --with-browseremoteprotocols=DNSSD,CUPS
- --with-cups-rundir="${EPREFIX}"/run/cups
- --with-fontdir="fonts/conf.avail"
- --with-pdftops=pdftops
- --with-rcdir=no
- --without-php
- $(use_enable dbus)
- $(use_enable foomatic)
- $(use_enable ldap)
- $(use_enable pclm)
- $(use_enable pdf mutool)
- $(use_enable postscript ghostscript)
- $(use_enable static-libs static)
- $(use_enable zeroconf avahi)
- $(use_with jpeg)
- $(use_with png)
- $(use_with tiff)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_compile() {
- 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
-
- if use postscript; then
- # workaround: some printer drivers still require pstoraster and pstopxl, bug #383831
- dosym gstoraster /usr/libexec/cups/filter/pstoraster
- dosym gstopxl /usr/libexec/cups/filter/pstopxl
- fi
-
- find "${ED}" \( -name "*.a" -o -name "*.la" \) -delete || die
-
- cp "${FILESDIR}"/cups-browsed.init.d-r1 "${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
-
- doinitd "${T}"/cups-browsed
- systemd_dounit "${S}/utils/cups-browsed.service"
-}
-
-src_test() {
- emake check
-}
-
-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.27.1.ebuild b/net-print/cups-filters/cups-filters-1.28.17-r2.ebuild
index 7d3a3240e736..3198dc53fecc 100644
--- a/net-print/cups-filters/cups-filters-1.27.1.ebuild
+++ b/net-print/cups-filters/cups-filters-1.28.17-r2.ebuild
@@ -1,30 +1,27 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
GENTOO_DEPEND_ON_PERL=no
-
inherit perl-module systemd flag-o-matic
-if [[ "${PV}" == "9999" ]] ; then
- inherit autotools git-r3
- EGIT_REPO_URI="https://github.com/OpenPrinting/cups-filters.git"
-else
- SRC_URI="http://www.openprinting.org/download/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~m68k-mint"
-fi
DESCRIPTION="Cups filters"
HOMEPAGE="https://wiki.linuxfoundation.org/openprinting/cups-filters"
+SRC_URI="
+ https://github.com/OpenPrinting/cups-filters/releases/download/${PV}/${P}.tar.xz
+ https://www.openprinting.org/download/${PN}/${P}.tar.xz
+"
LICENSE="MIT GPL-2"
SLOT="0"
-IUSE="dbus +foomatic ipp_autosetup jpeg ldap pclm pdf perl png +postscript static-libs test tiff zeroconf"
+IUSE="dbus exif +foomatic jpeg ldap pclm pdf perl png +postscript test tiff zeroconf"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
RESTRICT="!test? ( test )"
RDEPEND="
- >=app-text/poppler-0.32:=[cxx,jpeg?,lcms,tiff?,utils]
+ >=app-text/poppler-0.32[cxx,jpeg?,lcms,tiff?,utils]
>=app-text/qpdf-8.3.0:=
dev-libs/glib:2
media-libs/fontconfig
@@ -32,17 +29,18 @@ RDEPEND="
media-libs/lcms:2
>=net-print/cups-1.7.3
!<=net-print/cups-1.5.9999
- sys-devel/bc
+ app-alternatives/bc
sys-libs/zlib
+ exif? ( media-libs/libexif )
dbus? ( sys-apps/dbus )
foomatic? ( !net-print/foomatic-filters )
- jpeg? ( virtual/jpeg:0 )
- ldap? ( net-nds/openldap )
- pdf? ( app-text/mupdf )
+ jpeg? ( media-libs/libjpeg-turbo:= )
+ ldap? ( net-nds/openldap:= )
+ pdf? ( app-text/mupdf:= )
perl? ( dev-lang/perl:= )
- png? ( media-libs/libpng:0= )
+ png? ( media-libs/libpng:= )
postscript? ( >=app-text/ghostscript-gpl-9.09[cups] )
- tiff? ( media-libs/tiff:0 )
+ tiff? ( media-libs/tiff:= )
zeroconf? ( net-dns/avahi[dbus] )
"
DEPEND="${RDEPEND}"
@@ -53,15 +51,15 @@ BDEPEND="
test? ( media-fonts/dejavu )
"
-src_prepare() {
- default
- [[ "${PV}" == "9999" ]] && eautoreconf
-
- # Bug #626800
- append-cxxflags -std=c++11
-}
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.28.17-c++17.patch
+ "${FILESDIR}"/${PN}-1.28.17-CVE-2023-24805.patch
+)
src_configure() {
+ # Bug #898156
+ append-cxxflags -std=c++17
+
local myeconfargs=(
--enable-imagefilters
--localstatedir="${EPREFIX}"/var
@@ -71,30 +69,47 @@ src_configure() {
--with-pdftops=pdftops
--with-rcdir=no
--without-php
+
+ $(use_enable exif)
$(use_enable dbus)
$(use_enable foomatic)
- $(use_enable ipp_autosetup auto-setup-driverless)
$(use_enable ldap)
$(use_enable pclm)
$(use_enable pdf mutool)
$(use_enable postscript ghostscript)
- $(use_enable static-libs static)
$(use_enable zeroconf avahi)
$(use_with jpeg)
$(use_with png)
$(use_with tiff)
)
+
econf "${myeconfargs[@]}"
+
+ if use perl; then
+ pushd "${S}"/scripting/perl > /dev/null || die
+ perl-module_src_configure
+ popd > /dev/null || die
+ fi
}
src_compile() {
default
if use perl; then
- pushd "${S}/scripting/perl" > /dev/null
- perl-module_src_configure
+ pushd "${S}"/scripting/perl > /dev/null || die
perl-module_src_compile
- popd > /dev/null
+ popd > /dev/null || die
+ fi
+}
+
+src_test() {
+ # Avoid perl-module_src_test
+ default
+
+ if use perl; then
+ pushd "${S}/scripting/perl" > /dev/null || die
+ perl-module_src_test
+ popd > /dev/null || die
fi
}
@@ -102,10 +117,10 @@ src_install() {
default
if use perl; then
- pushd "${S}/scripting/perl" > /dev/null
+ pushd "${S}"/scripting/perl > /dev/null || die
perl-module_src_install
perl_delete_localpod
- popd > /dev/null
+ popd > /dev/null || die
fi
if use postscript; then
@@ -116,7 +131,7 @@ src_install() {
find "${ED}" \( -name "*.a" -o -name "*.la" \) -delete || die
- cp "${FILESDIR}"/cups-browsed.init.d-r1 "${T}"/cups-browsed || die
+ cp "${FILESDIR}"/cups-browsed.init.d-r2 "${T}"/cups-browsed || die
if ! use zeroconf ; then
sed -i -e 's:need cupsd avahi-daemon:need cupsd:g' "${T}"/cups-browsed || die
@@ -124,16 +139,12 @@ src_install() {
fi
doinitd "${T}"/cups-browsed
- systemd_dounit "${S}/utils/cups-browsed.service"
-}
-
-src_test() {
- emake check
+ 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."
+ ewarn "You are disabling the foomatic code in cups-filters. Please do that ONLY if absolutely"
+ ewarn "necessary. net-print/foomatic-filters as a replacement is deprecated and unmaintained."
fi
}
diff --git a/net-print/cups-filters/cups-filters-2.0.0-r1.ebuild b/net-print/cups-filters/cups-filters-2.0.0-r1.ebuild
new file mode 100644
index 000000000000..462a52f62558
--- /dev/null
+++ b/net-print/cups-filters/cups-filters-2.0.0-r1.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Cups filters"
+HOMEPAGE="https://wiki.linuxfoundation.org/openprinting/cups-filters"
+SRC_URI="https://github.com/OpenPrinting/cups-filters/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="+foomatic"
+
+RDEPEND="
+ net-print/libcupsfilters
+ net-print/libppd
+ >=net-print/cups-1.7.3
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=sys-devel/gettext-0.18.3
+ virtual/pkgconfig
+"
+
+# The tests are composed of:
+# - built program
+# - test case itself: filter/test.sh
+#
+# The latter is not wired up, and it becomes immediately evident why.
+# Bow to this reality and don't claim we can run anything. As a side
+# effect, don't compile in src_test, that which we never use.
+RESTRICT="test"
+
+src_configure() {
+ local myeconfargs=(
+ --enable-imagefilters
+ --enable-driverless
+ --enable-poppler
+ --localstatedir="${EPREFIX}"/var
+ --with-fontdir="fonts/conf.avail"
+ # cups-browsed is split out and avahi is not needed for filters
+ # https://github.com/OpenPrinting/cups-filters/pull/558
+ --disable-avahi
+ # These are just probed for the path. Always enable them.
+ --with-gs-path="${EPREFIX}"/usr/bin/gs
+ --with-mutool-path="${EPREFIX}"/usr/bin/mutool
+
+ $(use_enable foomatic)
+ )
+
+ # bash for configure until https://github.com/OpenPrinting/cups-filters/pull/567 (bug #920346)
+ # lands in a release.
+ CONFIG_SHELL="${BROOT}"/bin/bash econf "${myeconfargs[@]}"
+}
diff --git a/net-print/cups-filters/cups-filters-2.0.0.ebuild b/net-print/cups-filters/cups-filters-2.0.0.ebuild
new file mode 100644
index 000000000000..5e666fbd621b
--- /dev/null
+++ b/net-print/cups-filters/cups-filters-2.0.0.ebuild
@@ -0,0 +1,54 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Cups filters"
+HOMEPAGE="https://wiki.linuxfoundation.org/openprinting/cups-filters"
+SRC_URI="https://github.com/OpenPrinting/cups-filters/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="+foomatic"
+#IUSE=""
+KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
+
+RDEPEND="
+ net-print/libcupsfilters
+ net-print/libppd
+ >=net-print/cups-1.7.3
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=sys-devel/gettext-0.18.3
+ virtual/pkgconfig
+"
+
+# The tests are composed of:
+# - built program
+# - test case itself: filter/test.sh
+#
+# The latter is not wired up, and it becomes immediately evident why.
+# Bow to this reality and don't claim we can run anything. As a side
+# effect, don't compile in src_test, that which we never use.
+RESTRICT="test"
+
+src_configure() {
+ local myeconfargs=(
+ --enable-imagefilters
+ --enable-driverless
+ --enable-poppler
+ --localstatedir="${EPREFIX}"/var
+ --with-fontdir="fonts/conf.avail"
+ # cups-browsed is split out and avahi is not needed for filters
+ # https://github.com/OpenPrinting/cups-filters/pull/558
+ --disable-avahi
+ # These are just probed for the path. Always enable them.
+ --with-gs-path="${EPREFIX}"/usr/bin/gs
+ --with-mutool-path="${EPREFIX}"/usr/bin/mutool
+
+ $(use_enable foomatic)
+ )
+
+ econf "${myeconfargs[@]}"
+}
diff --git a/net-print/cups-filters/cups-filters-9999.ebuild b/net-print/cups-filters/cups-filters-9999.ebuild
deleted file mode 100644
index 6cb600e6a3ad..000000000000
--- a/net-print/cups-filters/cups-filters-9999.ebuild
+++ /dev/null
@@ -1,138 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-GENTOO_DEPEND_ON_PERL=no
-
-inherit perl-module systemd flag-o-matic
-
-if [[ "${PV}" == "9999" ]] ; then
- inherit autotools git-r3
- EGIT_REPO_URI="https://github.com/OpenPrinting/cups-filters.git"
-else
- SRC_URI="http://www.openprinting.org/download/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~m68k-mint"
-fi
-DESCRIPTION="Cups filters"
-HOMEPAGE="https://wiki.linuxfoundation.org/openprinting/cups-filters"
-
-LICENSE="MIT GPL-2"
-SLOT="0"
-IUSE="dbus +foomatic jpeg ldap pclm pdf perl png +postscript static-libs test tiff zeroconf"
-
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=app-text/poppler-0.32:=[cxx,jpeg?,lcms,tiff?,utils]
- >=app-text/qpdf-8.3.0:=
- dev-libs/glib: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 )
- ldap? ( net-nds/openldap )
- pdf? ( app-text/mupdf )
- perl? ( dev-lang/perl:= )
- png? ( media-libs/libpng:0= )
- postscript? ( >=app-text/ghostscript-gpl-9.09[cups] )
- tiff? ( media-libs/tiff:0 )
- zeroconf? ( net-dns/avahi[dbus] )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- dev-util/gdbus-codegen
- >=sys-devel/gettext-0.18.3
- virtual/pkgconfig
- test? ( media-fonts/dejavu )
-"
-
-src_prepare() {
- default
- [[ "${PV}" == "9999" ]] && eautoreconf
-
- # Bug #626800
- append-cxxflags -std=c++11
-}
-
-src_configure() {
- local myeconfargs=(
- --enable-imagefilters
- --localstatedir="${EPREFIX}"/var
- --with-browseremoteprotocols=DNSSD,CUPS
- --with-cups-rundir="${EPREFIX}"/run/cups
- --with-fontdir="fonts/conf.avail"
- --with-pdftops=pdftops
- --with-rcdir=no
- --without-php
- $(use_enable dbus)
- $(use_enable foomatic)
- $(use_enable ldap)
- $(use_enable pclm)
- $(use_enable pdf mutool)
- $(use_enable postscript ghostscript)
- $(use_enable static-libs static)
- $(use_enable zeroconf avahi)
- $(use_with jpeg)
- $(use_with png)
- $(use_with tiff)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_compile() {
- 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
-
- if use postscript; then
- # workaround: some printer drivers still require pstoraster and pstopxl, bug #383831
- dosym gstoraster /usr/libexec/cups/filter/pstoraster
- dosym gstopxl /usr/libexec/cups/filter/pstopxl
- fi
-
- find "${ED}" \( -name "*.a" -o -name "*.la" \) -delete || die
-
- cp "${FILESDIR}"/cups-browsed.init.d-r1 "${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
-
- doinitd "${T}"/cups-browsed
- systemd_dounit "${S}/utils/cups-browsed.service"
-}
-
-src_test() {
- emake check
-}
-
-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-r2 b/net-print/cups-filters/files/cups-browsed.init.d-r2
new file mode 100644
index 000000000000..4fea546a05ca
--- /dev/null
+++ b/net-print/cups-filters/files/cups-browsed.init.d-r2
@@ -0,0 +1,9 @@
+#!/sbin/openrc-run
+
+pidfile="/run/cups-browsed.pid"
+command="/usr/sbin/cups-browsed"
+command_background="true"
+
+depend() {
+ need cupsd avahi-daemon
+}
diff --git a/net-print/cups-filters/files/cups-filters-1.28.17-CVE-2023-24805.patch b/net-print/cups-filters/files/cups-filters-1.28.17-CVE-2023-24805.patch
new file mode 100644
index 000000000000..58b562504d0d
--- /dev/null
+++ b/net-print/cups-filters/files/cups-filters-1.28.17-CVE-2023-24805.patch
@@ -0,0 +1,225 @@
+Modified version from:
+
+ https://packages.debian.org/de/sid/cups-filters
+
+ From: Thorsten Alteholz <debian@alteholz.de>
+ Date: Fri, 19 May 2023 10:49:35 +0200
+ Subject: fix CVE-2023-24805
+
+Original patch:
+
+https://github.com/OpenPrinting/cups-filters/commit/8f274035756c04efeb77eb654e9d4c4447287d65
+
+From 8f274035756c04efeb77eb654e9d4c4447287d65 Mon Sep 17 00:00:00 2001
+From: Till Kamppeter <till.kamppeter@gmail.com>
+Date: Wed, 17 May 2023 11:12:37 +0200
+Subject: [PATCH] Merge pull request from GHSA-gpxc-v2m8-fr3x
+
+* beh backend: Use execv() instead of system() - CVE-2023-24805
+
+With execv() command line arguments are passed as separate strings and
+not the full command line in a single string. This prevents arbitrary
+command execution by escaping the quoting of the arguments in a job
+with forged job title.
+
+* beh backend: Extra checks against odd/forged input - CVE-2023-24805
+
+- Do not allow '/' in the scheme of the URI (= backend executable
+ name), to assure that only backends inside /usr/lib/cups/backend/
+ are used.
+
+- Pre-define scheme buffer to empty string, to be defined for case of
+ uri being NULL.
+
+- URI must have ':', to split off scheme, otherwise error.
+
+- Check return value of snprintf() to create call path for backend, to
+ error out on truncation of a too long scheme or on complete failure
+ due to a completely odd scheme.
+
+* beh backend: Further improvements - CVE-2023-24805
+
+- Use strncat() instead of strncpy() for getting scheme from URI, the latter
+ does not require setting terminating zero byte in case of truncation.
+
+- Also exclude "." or ".." as scheme, as directories are not valid CUPS
+ backends.
+
+- Do not use fprintf() in sigterm_handler(), to not interfere with a
+ fprintf() which could be running in the main process when
+ sigterm_handler() is triggered.
+
+- Use "static volatile int" for global variable job_canceled.
+
+---
+ backend/beh.c | 107 +++++++++++++++++++++++++++++++++++++++++++++-------------
+ 1 file changed, 84 insertions(+), 23 deletions(-)
+
+diff --git a/backend/beh.c b/backend/beh.c
+index 225fd27..8d51235 100644
+--- a/backend/beh.c
++++ b/backend/beh.c
+@@ -22,12 +22,13 @@
+ #include "backend-private.h"
+ #include <cups/array.h>
+ #include <ctype.h>
++#include <sys/wait.h>
+
+ /*
+ * Local globals...
+ */
+
+-static int job_canceled = 0; /* Set to 1 on SIGTERM */
++static volatile int job_canceled = 0; /* Set to 1 on SIGTERM */
+
+ /*
+ * Local functions...
+@@ -213,21 +214,40 @@ call_backend(char *uri, /* I - URI of final destination */
+ char **argv, /* I - Command-line arguments */
+ char *filename) { /* I - File name of input data */
+ const char *cups_serverbin; /* Location of programs */
++ char *backend_argv[8]; /* Arguments for backend */
+ char scheme[1024], /* Scheme from URI */
+ *ptr, /* Pointer into scheme */
+- cmdline[65536]; /* Backend command line */
+- int retval;
++ backend_path[2048]; /* Backend path */
++ int pid = 0, /* Process ID of backend */
++ wait_pid, /* Process ID from wait() */
++ wait_status, /* Status from child */
++ retval = 0;
++ int bytes;
+
+ /*
+ * Build the backend command line...
+ */
+
+- strncpy(scheme, uri, sizeof(scheme) - 1);
+- if (strlen(uri) > 1023)
+- scheme[1023] = '\0';
++ scheme[0] = '\0';
++ strncat(scheme, uri, sizeof(scheme) - 1);
+ if ((ptr = strchr(scheme, ':')) != NULL)
+ *ptr = '\0';
+-
++ else {
++ fprintf(stderr,
++ "ERROR: beh: Invalid URI, no colon (':') to mark end of scheme part.\n");
++ exit (CUPS_BACKEND_FAILED);
++ }
++ if (strchr(scheme, '/')) {
++ fprintf(stderr,
++ "ERROR: beh: Invalid URI, scheme contains a slash ('/').\n");
++ exit (CUPS_BACKEND_FAILED);
++ }
++ if (!strcmp(scheme, ".") || !strcmp(scheme, "..")) {
++ fprintf(stderr,
++ "ERROR: beh: Invalid URI, scheme (\"%s\") is a directory.\n",
++ scheme);
++ exit (CUPS_BACKEND_FAILED);
++ }
+ if ((cups_serverbin = getenv("CUPS_SERVERBIN")) == NULL)
+ cups_serverbin = CUPS_SERVERBIN;
+
+@@ -235,16 +255,29 @@ call_backend(char *uri, /* I - URI of final destination */
+ fprintf(stderr,
+ "ERROR: beh: Direct output into a file not supported.\n");
+ exit (CUPS_BACKEND_FAILED);
+- } else
+- snprintf(cmdline, sizeof(cmdline),
+- "%s/backend/%s '%s' '%s' '%s' '%s' '%s' %s",
+- cups_serverbin, scheme, argv[1], argv[2], argv[3],
+- /* Apply number of copies only if beh was called with a
+- file name and not with the print data in stdin, as
+- backends should handle copies only if they are called
+- with a file name */
+- (argc == 6 ? "1" : argv[4]),
+- argv[5], filename);
++ }
++
++ backend_argv[0] = uri;
++ backend_argv[1] = argv[1];
++ backend_argv[2] = argv[2];
++ backend_argv[3] = argv[3];
++ /* Apply number of copies only if beh was called with a file name
++ and not with the print data in stdin, as backends should handle
++ copies only if they are called with a file name */
++ backend_argv[4] = (argc == 6 ? "1" : argv[4]);
++ backend_argv[5] = argv[5];
++ backend_argv[6] = filename;
++ backend_argv[7] = NULL;
++
++ bytes = snprintf(backend_path, sizeof(backend_path),
++ "%s/backend/%s", cups_serverbin, scheme);
++ if (bytes < 0 || bytes >= sizeof(backend_path))
++ {
++ fprintf(stderr,
++ "ERROR: beh: Invalid scheme (\"%s\"), could not determing backend path.\n",
++ scheme);
++ return (CUPS_BACKEND_FAILED);
++ }
+
+ /*
+ * Overwrite the device URI and run the actual backend...
+@@ -253,18 +286,44 @@ call_backend(char *uri, /* I - URI of final destination */
+ setenv("DEVICE_URI", uri, 1);
+
+ fprintf(stderr,
+- "DEBUG: beh: Executing backend command line \"%s\"...\n",
+- cmdline);
++ "DEBUG: beh: Executing backend command line \"%s '%s' '%s' '%s' '%s' '%s' %s\"...\n",
++ backend_path, backend_argv[1], backend_argv[2], backend_argv[3],
++ backend_argv[4], backend_argv[5], backend_argv[6]);
+ fprintf(stderr,
+ "DEBUG: beh: Using device URI: %s\n",
+ uri);
+
+- retval = system(cmdline) >> 8;
++ if ((pid = fork()) == 0) {
++ /*
++ * Child comes here...
++ */
++
++ /* Run the backend */
++ execv(backend_path, backend_argv);
+
+- if (retval == -1)
+ fprintf(stderr, "ERROR: Unable to execute backend command line: %s\n",
+ strerror(errno));
+
++ exit(1);
++ } else if (pid < 0) {
++ /*
++ * Unable to fork!
++ */
++
++ return (CUPS_BACKEND_FAILED);
++ }
++
++ while ((wait_pid = wait(&wait_status)) < 0 && errno == EINTR);
++
++ if (wait_pid >= 0 && wait_status) {
++ if (WIFEXITED(wait_status))
++ retval = WEXITSTATUS(wait_status);
++ else if (WTERMSIG(wait_status) != SIGTERM)
++ retval = WTERMSIG(wait_status);
++ else
++ retval = 0;
++ }
++
+ return (retval);
+ }
+
+@@ -277,8 +336,10 @@ static void
+ sigterm_handler(int sig) { /* I - Signal number (unused) */
+ (void)sig;
+
+- fprintf(stderr,
+- "DEBUG: beh: Job canceled.\n");
++ const char * const msg = "DEBUG: beh: Job canceled.\n";
++ /* The if() is to eliminate the return value and silence the warning
++ about an unused return value. */
++ if (write(2, msg, strlen(msg)));
+
+ if (job_canceled)
+ _exit(CUPS_BACKEND_OK);
diff --git a/net-print/cups-filters/files/cups-filters-1.28.17-c++17.patch b/net-print/cups-filters/files/cups-filters-1.28.17-c++17.patch
new file mode 100644
index 000000000000..f8f63ccd4724
--- /dev/null
+++ b/net-print/cups-filters/files/cups-filters-1.28.17-c++17.patch
@@ -0,0 +1,31 @@
+https://bugs.gentoo.org/901243
+(and https://bugs.gentoo.org/898076)
+https://github.com/OpenPrinting/cups-filters/pull/505
+
+From 104fba23b1c0c67c92777b3165c6dca99558a656 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 6 Feb 2023 18:13:52 -0800
+Subject: [PATCH] use noexcept(false) instead of throw() from c++17 onwards
+
+C++17 removed dynamic exception specifications [1]
+they had been deprecated since C++11, replace
+throw(whatever) with noexcept(false).
+
+[1] https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0003r5.html
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/filter/pdftoraster.cxx
++++ b/filter/pdftoraster.cxx
+@@ -2148,7 +2148,11 @@ int main(int argc, char *argv[]) {
+ /* For compatibility with g++ >= 4.7 compilers _GLIBCXX_THROW
+ * should be used as a guard, otherwise use traditional definition */
+ #ifndef _GLIBCXX_THROW
++#if __cplusplus < 201703L
+ #define _GLIBCXX_THROW throw
++#else
++#define _GLIBCXX_THROW(x) noexcept(false)
++#endif
+ #endif
+
+ void * operator new(size_t size) _GLIBCXX_THROW (std::bad_alloc)
+
diff --git a/net-print/cups-filters/metadata.xml b/net-print/cups-filters/metadata.xml
index 8c940c947b64..f39cf8273849 100644
--- a/net-print/cups-filters/metadata.xml
+++ b/net-print/cups-filters/metadata.xml
@@ -1,19 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>printing@gentoo.org</email>
- <name>Gentoo Printing Project</name>
- </maintainer>
- <use>
- <flag name="foomatic">
- Build the included foomatic-rip printer driver. Strongly recommended.
- </flag>
- <flag name="ipp_autosetup">
- Let cups-browsed automatically set up IPP network printers by default.
- </flag>
- <flag name="pclm">
- Enable PCLm support
- </flag>
- </use>
+ <maintainer type="project">
+ <email>printing@gentoo.org</email>
+ <name>Gentoo Printing Project</name>
+ </maintainer>
+ <use>
+ <flag name="foomatic">Build the included foomatic-rip printer driver. Strongly recommended.</flag>
+ <flag name="pclm">Enable PCLm support</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">OpenPrinting/cups-filters</remote-id>
+ <remote-id type="cpe">cpe:/a:linuxfoundation:cups-filters</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/net-print/cups-meta/cups-meta-1.ebuild b/net-print/cups-meta/cups-meta-1.ebuild
new file mode 100644
index 000000000000..26e16556b814
--- /dev/null
+++ b/net-print/cups-meta/cups-meta-1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Metapackage for a fully configured cups printer setup"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+
+LICENSE="metapackage"
+SLOT="0"
+IUSE="+browsed +foomatic pdf +postscript +poppler zeroconf"
+KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
+
+RDEPEND="
+ net-print/cups[zeroconf?]
+ net-print/libppd[postscript?,poppler?]
+ net-print/libcupsfilters[pdf?,poppler?]
+ net-print/cups-filters[foomatic?]
+
+ browsed? ( net-print/cups-browsed )
+ pdf? ( app-text/mupdf )
+ postscript? ( >=app-text/ghostscript-gpl-9.09[cups] )
+"
diff --git a/net-print/cups-meta/metadata.xml b/net-print/cups-meta/metadata.xml
new file mode 100644
index 000000000000..45b1ab54c522
--- /dev/null
+++ b/net-print/cups-meta/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>printing@gentoo.org</email>
+ <name>Gentoo Printing Project</name>
+ </maintainer>
+ <stabilize-allarches/>
+ <use>
+ <flag name="browsed">Include support for the cups-browsed daemon.</flag>
+ <flag name="foomatic">Include support for the foomatic-rip printer driver. Strongly recommended.</flag>
+ <flag name="poppler">Include support for the <pkg>app-text/poppler</pkg> filters.</flag>
+ </use>
+</pkgmetadata>
diff --git a/net-print/cups-pdf/Manifest b/net-print/cups-pdf/Manifest
index 2b4f14b8915a..202924793697 100644
--- a/net-print/cups-pdf/Manifest
+++ b/net-print/cups-pdf/Manifest
@@ -1,3 +1 @@
-DIST cups-pdf_2.6.1.tar.gz 33315 BLAKE2B 8268777d9c604622a801e663f9aac9ea1fd7253ea87f1f65c7954134f7473b7d8baf94cec09c5dd14bb5470df47ea4484cfbd90afb4b0da652395d657011f86d SHA512 60702159907f95e005c93a38551b5aaa65b7e4b8e009b48becf4523d606c4bbb127e81e5acf8519ce4c9aed90b41deb01d80171f3145086351dbd022863a3816
-DIST cups-pdf_3.0.0.tar.gz 29654 BLAKE2B ec1e89eb876161bd2b123568448e9b0075537aacc01623ca2ae5128f946ff2ea797893a009bcf88a1f26af9755d803e57de2271b4cd828fed00e74790f66f9f8 SHA512 14420e50b9ac93d12e75b98ba8c3456d35a3bcce0778eee8308ac7a3c3a987b4dca5a4f140353bd2060a5f0f4d3434c442b00ea309660b4e5a72fe11dba25276
DIST cups-pdf_3.0.1.tar.gz 29754 BLAKE2B f964358c5e465447e703848a697f6c801624a1836e2a0a4026c507c66048cf4bef92327508598ec7e9a356d4f57894a6b610e55b7a9a34e942cf2b88c6c55b85 SHA512 a06580f3056dddbb883c8db0c71b37b883482ae1ac8aa9bcfd85e679c4dcb44278006b7110d2988173d0eeb05b0f19fb39081fad49bf26839235e97fbe27a818
diff --git a/net-print/cups-pdf/cups-pdf-2.6.1.ebuild b/net-print/cups-pdf/cups-pdf-2.6.1.ebuild
deleted file mode 100644
index 785c25e65104..000000000000
--- a/net-print/cups-pdf/cups-pdf-2.6.1.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=4
-
-inherit toolchain-funcs
-
-DESCRIPTION="Provides a virtual printer for CUPS to produce PDF files"
-HOMEPAGE="https://www.cups-pdf.de/"
-SRC_URI="https://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.0.ebuild b/net-print/cups-pdf/cups-pdf-3.0.1-r3.ebuild
index b2a6c83640ab..ed52b55cd752 100644
--- a/net-print/cups-pdf/cups-pdf-3.0.0.ebuild
+++ b/net-print/cups-pdf/cups-pdf-3.0.1-r3.ebuild
@@ -1,31 +1,32 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit toolchain-funcs
DESCRIPTION="Provides a virtual printer for CUPS to produce PDF files"
HOMEPAGE="https://www.cups-pdf.de/"
SRC_URI="https://www.cups-pdf.de/src/${PN}_${PV/_}.tar.gz"
+S=${WORKDIR}/${PN}-${PV/_}
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~x86"
+KEYWORDS="amd64 ~arm ~arm64 ppc ~ppc64 x86"
IUSE="+ppds"
-RDEPEND="
- net-print/cups
- app-text/ghostscript-gpl
-"
-DEPEND="${RDEPEND}"
+DEPEND="net-print/cups"
+RDEPEND="${DEPEND}
+ >=app-text/ghostscript-gpl-9.54"
-S=${WORKDIR}/${PN}-${PV/_}
+PATCHES=( "${FILESDIR}"/${PN}-3.0.1-ghostscript-gpl-9.54-compat.patch )
+
+src_configure() {
+ tc-export CC
+}
src_compile() {
- pushd src >/dev/null
- $(tc-getCC) ${LDFLAGS} ${CFLAGS} ${PN}.c -o ${PN} -lcups || die
- popd >/dev/null
+ LDLIBS="-lcups" emake -C src ${PN}
}
src_install() {
@@ -43,5 +44,5 @@ src_install() {
doins extra/CUPS-PDF_noopt.ppd
fi
- dodoc ChangeLog README
+ einstalldocs
}
diff --git a/net-print/cups-pdf/cups-pdf-3.0.1.ebuild b/net-print/cups-pdf/cups-pdf-3.0.1.ebuild
deleted file mode 100644
index cd78862b5dec..000000000000
--- a/net-print/cups-pdf/cups-pdf-3.0.1.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs
-
-DESCRIPTION="Provides a virtual printer for CUPS to produce PDF files"
-HOMEPAGE="https://www.cups-pdf.de/"
-SRC_URI="https://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
-}
diff --git a/net-print/cups-pdf/files/cups-pdf-3.0.1-ghostscript-gpl-9.54-compat.patch b/net-print/cups-pdf/files/cups-pdf-3.0.1-ghostscript-gpl-9.54-compat.patch
new file mode 100644
index 000000000000..3890743107e5
--- /dev/null
+++ b/net-print/cups-pdf/files/cups-pdf-3.0.1-ghostscript-gpl-9.54-compat.patch
@@ -0,0 +1,28 @@
+https://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=180419375973b9ce4664286a67106d712260ef7f
+
+--- a/extra/cups-pdf.conf
++++ b/extra/cups-pdf.conf
+@@ -250,9 +250,9 @@
+ ### Key: GSCall (config)
+ ## command line for calling GhostScript (!!! DO NOT USE NEWLINES !!!)
+ ## MacOSX: for using pstopdf set this to %s %s -o %s %s
+-### Default: %s -q -dCompatibilityLevel=%s -dNOPAUSE -dBATCH -dSAFER -sDEVICE=pdfwrite -sOutputFile="%s" -dAutoRotatePages=/PageByPage -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -dPDFSETTINGS=/prepress -c .setpdfwrite -f %s
++### Default: %s -q -dCompatibilityLevel=%s -dNOPAUSE -dBATCH -dSAFER -sDEVICE=pdfwrite -sOutputFile="%s" -dAutoRotatePages=/PageByPage -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -dPDFSETTINGS=/prepress -c -f %s
+
+-#GSCall %s -q -dCompatibilityLevel=%s -dNOPAUSE -dBATCH -dSAFER -sDEVICE=pdfwrite -sOutputFile="%s" -dAutoRotatePages=/PageByPage -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -dPDFSETTINGS=/prepress -c .setpdfwrite -f %s
++#GSCall %s -q -dCompatibilityLevel=%s -dNOPAUSE -dBATCH -dSAFER -sDEVICE=pdfwrite -sOutputFile="%s" -dAutoRotatePages=/PageByPage -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -dPDFSETTINGS=/prepress -c -f %s
+
+ ### Key: PDFVer (config, ppd, lptopions)
+ ## PDF version to be created - can be "1.5", "1.4", "1.3" or "1.2"
+--- a/src/cups-pdf.h
++++ b/src/cups-pdf.h
+@@ -58,7 +58,7 @@ struct {
+ { "AnonDirName", SEC_CONF|SEC_PPD, { "/var/spool/cups-pdf/ANONYMOUS" } },
+ { "AnonUser", SEC_CONF|SEC_PPD, { "nobody" } },
+ { "GhostScript", SEC_CONF|SEC_PPD, { "/usr/bin/gs" } },
+- { "GSCall", SEC_CONF|SEC_PPD, { "%s -q -dCompatibilityLevel=%s -dNOPAUSE -dBATCH -dSAFER -sDEVICE=pdfwrite -sOutputFile=\"%s\" -dAutoRotatePages=/PageByPage -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -dPDFSETTINGS=/prepress -c .setpdfwrite -f %s" } },
++ { "GSCall", SEC_CONF|SEC_PPD, { "%s -q -dCompatibilityLevel=%s -dNOPAUSE -dBATCH -dSAFER -sDEVICE=pdfwrite -sOutputFile=\"%s\" -dAutoRotatePages=/PageByPage -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -dPDFSETTINGS=/prepress -c -f %s" } },
+ { "Grp", SEC_CONF|SEC_PPD, { "lp" } },
+ { "GSTmp", SEC_CONF|SEC_PPD, { "TMPDIR=/var/tmp" } },
+ { "Log", SEC_CONF|SEC_PPD, { "/var/log/cups" } },
+
diff --git a/net-print/cups-pdf/metadata.xml b/net-print/cups-pdf/metadata.xml
index c439b06d8c84..882504794e17 100644
--- a/net-print/cups-pdf/metadata.xml
+++ b/net-print/cups-pdf/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>printing@gentoo.org</email>
- <name>Gentoo Printing Project</name>
-</maintainer>
+ <maintainer type="project">
+ <email>printing@gentoo.org</email>
+ <name>Gentoo Printing Project</name>
+ </maintainer>
</pkgmetadata>
diff --git a/net-print/cups-pk-helper/Manifest b/net-print/cups-pk-helper/Manifest
index be83f62d218a..b590abe2099e 100644
--- a/net-print/cups-pk-helper/Manifest
+++ b/net-print/cups-pk-helper/Manifest
@@ -1 +1 @@
-DIST cups-pk-helper-0.2.6.tar.xz 162368 BLAKE2B 3dec9a32f577c35a426ec4bbf2f96b2e18e0cd7bbb8a43fd93a6104d8fbb01de15cc7a168ae67fe5f2dca34823c70ac5f61acc01d876130d6ae9f5b789491d23 SHA512 33f1b6f58f4772148bd1cfb8163dacaffd3cc62f2d03731710c98b765ebb8b87541cb9cf43e886880134c32db91a43c7142b1556a0abdf1449068031b0d5fbd3
+DIST cups-pk-helper-0.2.7.tar.xz 54500 BLAKE2B e9107c18396e87bc8e385a32d00ac6d15bfcc6f53e9c04514bbc9e7bee6b4a87ba16b97da321c72fb01fa273a0fdcb396a0eed335e9e37eb98d7a299ec480ca1 SHA512 8f1d5dce73a52552d00eb3f54b39e03ca7ae711a0591572a25bd8926e228457628f1ee7e6ae89bda1b0ef473f860ad85bff9036ca1bc244d2cbda530bab96d40
diff --git a/net-print/cups-pk-helper/cups-pk-helper-0.2.6.ebuild b/net-print/cups-pk-helper/cups-pk-helper-0.2.6.ebuild
deleted file mode 100644
index f196d8750b43..000000000000
--- a/net-print/cups-pk-helper/cups-pk-helper-0.2.6.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-GCONF_DEBUG="no"
-
-inherit gnome2
-
-DESCRIPTION="PolicyKit helper to configure cups with fine-grained privileges"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/cups-pk-helper"
-SRC_URI="https://www.freedesktop.org/software/${PN}/releases/${P}.tar.xz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm arm64 ~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/cups-pk-helper-0.2.7-r1.ebuild b/net-print/cups-pk-helper/cups-pk-helper-0.2.7-r1.ebuild
new file mode 100644
index 000000000000..52b9222c776c
--- /dev/null
+++ b/net-print/cups-pk-helper/cups-pk-helper-0.2.7-r1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit gnome.org meson
+
+DESCRIPTION="PolicyKit helper to configure cups with fine-grained privileges"
+HOMEPAGE="https://www.freedesktop.org/wiki/Software/cups-pk-helper https://gitlab.freedesktop.org/cups-pk-helper/cups-pk-helper"
+SRC_URI="https://www.freedesktop.org/software/${PN}/releases/${P}.tar.xz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~loong ppc ppc64 ~riscv ~sparc x86"
+RESTRICT="test" # bug #864949
+
+DEPEND="
+ >=dev-libs/glib-2.36.0:2
+ >=sys-auth/polkit-0.97
+ net-print/cups
+"
+RDEPEND="${DEPEND}
+ sys-apps/dbus
+"
+BDEPEND="
+ >=dev-util/gdbus-codegen-2.36.0
+ virtual/pkgconfig
+ sys-devel/gettext
+"
+
+DOCS=( AUTHORS HACKING NEWS README )
diff --git a/net-print/cups-pk-helper/metadata.xml b/net-print/cups-pk-helper/metadata.xml
index 996e7cacd217..5f0502eb8386 100644
--- a/net-print/cups-pk-helper/metadata.xml
+++ b/net-print/cups-pk-helper/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>gnome@gentoo.org</email>
- <name>Gentoo GNOME Desktop</name>
- </maintainer>
+ <maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="freedesktop-gitlab">cups-pk-helper/cups-pk-helper</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/net-print/cups-windows/cups-windows-6.0-r1.ebuild b/net-print/cups-windows/cups-windows-6.0-r1.ebuild
index ad095f4a6ea5..d1f32d6457db 100644
--- a/net-print/cups-windows/cups-windows-6.0-r1.ebuild
+++ b/net-print/cups-windows/cups-windows-6.0-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=4
+EAPI=7
DESCRIPTION="CUPS PostScript Driver for Windows"
HOMEPAGE="https://www.cups.org/"
@@ -9,15 +9,16 @@ SRC_URI="mirror://gentoo/${P}-source.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ~ia64 m68k ~mips ppc ppc64 s390 sparc x86"
-IUSE=""
+KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86"
RDEPEND=">=net-print/cups-1.2"
DEPEND="${RDEPEND}"
src_install() {
- emake install BUILDROOT="${D}"
+ emake BUILDROOT="${D}" install
dodoc README.txt
+
einfo "Copying missing cups6.ppd file"
- cp "${S}/i386/cups6.ppd" "${ED}/usr/share/cups/drivers/"
+ insinto /usr/share/cups/drivers
+ doins i386/cups6.ppd
}
diff --git a/net-print/cups-windows/metadata.xml b/net-print/cups-windows/metadata.xml
index c439b06d8c84..e2fedda90ee1 100644
--- a/net-print/cups-windows/metadata.xml
+++ b/net-print/cups-windows/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>printing@gentoo.org</email>
diff --git a/net-print/cups/Manifest b/net-print/cups/Manifest
index 4030d0346278..ec197c098c16 100644
--- a/net-print/cups/Manifest
+++ b/net-print/cups/Manifest
@@ -1,2 +1,2 @@
-DIST cups-2.2.13-source.tar.gz 10410121 BLAKE2B 662ad7fe95a9cb82748a6035cf61bad8a823656522259fc8eafe4426cc57541beb29da9116174f9d6750ec207eacb83ab4e314021506d6a342577f03ff25b0cd SHA512 dc323bdcec86f11ec98e4881c540aa8be24f82d289c8a4f866e42bfd6f107b686346f1418b6347b3794dabac3c23d6e604e212aa8e169879c58b746fb1bc490d
-DIST cups-2.3.1-source.tar.gz 8135891 BLAKE2B fab46dfeb8a1846c4d8c8a1c166b465e72928ecc5b52dedd9d6a6328619f6eda822a85da9545c405b7bc7375acd2f2677497b94ab00735979487417537438831 SHA512 e3f3ad9e78c1c723d46cc2276957ac67495483882f639421203d9dad227eacbb1259717a92489e710995fdc89e2d575202e4b43117aff08ff1230dcf06674376
+DIST cups-2.4.6-source.tar.gz 8135135 BLAKE2B 4e61112ddaa46f20b1cfcb8f523dd07ba7d82604b9857754b288a2a9c5bc50ce242cfa119867347e4696818dc2eb505cf7fff1f9a0634e314edb2500395b83e4 SHA512 eb748680a748f599e4826c17054a24259d190e6c8e8339f6a7a37ee2a3f4c3fd1829e856b25a854cfdbee1b51279c70a0e847f6142225b8b68f1cd10c4ce4ce4
+DIST cups-2.4.7-source.tar.gz 8134809 BLAKE2B d81de62cff37c576ef8fb125b97568c2d86602cec6151d7030552fad421d7bc77a5df1e860d5ac5a241e739cc0d1fe5fcac44b8451ad2fc4dc675cf74fd41382 SHA512 914b574ff6d85de9f3471528b52d4a436c484c441f47651846e1bdfa00aec26774efd416ff466216d2bccf468f8a797b1e0d666b5c82abc87e77550ce8b00d39
diff --git a/net-print/cups/cups-2.3.1.ebuild b/net-print/cups/cups-2.4.6.ebuild
index 241cb46e4268..0419f6602052 100644
--- a/net-print/cups/cups-2.3.1.ebuild
+++ b/net-print/cups/cups-2.4.6.ebuild
@@ -1,39 +1,46 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python2_7 )
+inherit autotools linux-info xdg multilib-minimal optfeature pam toolchain-funcs
-inherit autotools flag-o-matic linux-info xdg multilib-minimal pam user systemd toolchain-funcs
-
-MY_PV="${PV/_rc/rc}"
-MY_PV="${MY_PV/_beta/b}"
+MY_PV="${PV/_beta/b}"
+MY_PV="${MY_PV/_rc/rc}"
+MY_PV="${MY_PV/_p/op}"
MY_P="${PN}-${MY_PV}"
-if [[ ${PV} == *9999 ]]; then
+if [[ ${PV} == *9999 ]] ; then
inherit git-r3
- EGIT_REPO_URI="https://github.com/apple/cups.git"
- if [[ ${PV} != 9999 ]]; then
- EGIT_BRANCH=branch-${PV/.9999}
- fi
+ EGIT_REPO_URI="https://github.com/OpenPrinting/cups.git"
+ [[ ${PV} != 9999 ]] && EGIT_BRANCH=branch-${PV/.9999}
else
- #SRC_URI="https://github.com/apple/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- SRC_URI="https://github.com/apple/cups/releases/download/v${MY_PV}/${MY_P}-source.tar.gz"
- if [[ "${PV}" != *_beta* ]] && [[ "${PV}" != *_rc* ]] ; then
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~m68k-mint"
+ SRC_URI="https://github.com/OpenPrinting/cups/releases/download/v${MY_PV}/cups-${MY_PV}-source.tar.gz"
+ if [[ ${PV} != *_beta* && ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
fi
+S="${WORKDIR}/${MY_P}"
+
DESCRIPTION="The Common Unix Printing System"
-HOMEPAGE="https://www.cups.org/"
+HOMEPAGE="https://www.cups.org/ https://github.com/OpenPrinting/cups"
LICENSE="Apache-2.0"
SLOT="0"
-IUSE="acl dbus debug kerberos lprng-compat pam selinux +ssl static-libs systemd +threads usb X xinetd zeroconf"
+IUSE="acl dbus debug kerberos openssl pam selinux +ssl static-libs systemd test usb X xinetd zeroconf"
+
+# As of 2.4.2, they don't actually seem to be interactive (they pass some flags
+# by default to input for us), but they fail on some greyscale issue w/ poppler?
+RESTRICT="!test? ( test ) test"
-CDEPEND="
- app-text/libpaper
+BDEPEND="
+ acct-group/lp
+ acct-group/lpadmin
+ virtual/pkgconfig
+"
+DEPEND="
+ app-text/libpaper:=
sys-libs/zlib
acl? (
kernel_linux? (
@@ -43,62 +50,43 @@ CDEPEND="
)
dbus? ( >=sys-apps/dbus-1.6.18-r1[${MULTILIB_USEDEP}] )
kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
- !lprng-compat? ( !net-print/lprng )
pam? ( sys-libs/pam )
- ssl? ( >=net-libs/gnutls-2.12.23-r6:0=[${MULTILIB_USEDEP}] )
+ !pam? ( virtual/libcrypt:= )
+ ssl? (
+ !openssl? ( >=net-libs/gnutls-2.12.23-r6:0=[${MULTILIB_USEDEP}] )
+ openssl? ( dev-libs/openssl:=[${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}] )
-"
-
-DEPEND="${CDEPEND}"
-BDEPEND="
- acct-group/lp
- >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
+ zeroconf? ( >=net-dns/avahi-0.6.31-r2[dbus,${MULTILIB_USEDEP}] )
"
-
-RDEPEND="${CDEPEND}
+RDEPEND="
+ ${DEPEND}
acct-group/lp
+ acct-group/lpadmin
selinux? ( sec-policy/selinux-cups )
"
-
PDEPEND=">=net-print/cups-filters-1.0.43"
-REQUIRED_USE="
- usb? ( threads )
-"
-
-# upstream includes an interactive test which is a nono for gentoo
-RESTRICT="test"
-
-# systemd-socket.patch from Fedora
PATCHES=(
- "${FILESDIR}/${PN}-2.2.6-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.1-xinetd-installation-fix.patch"
+ "${FILESDIR}/${PN}-2.4.1-nostrip.patch"
+ "${FILESDIR}/${PN}-2.4.1-user-AR.patch"
)
MULTILIB_CHOST_TOOLS=(
/usr/bin/cups-config
)
-S="${WORKDIR}/${MY_P}"
-
pkg_setup() {
- #enewgroup lp -> acct-group/lp
- enewuser lp -1 -1 -1 lp
- enewgroup lpadmin 106
-
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; this should now work in most cases (bug 501122)
+ # Recheck that we don't have usblp to collide with libusb; this should now work in most cases (bug #501122)
if use usb; then
if linux_chkconfig_present USB_PRINTER; then
elog "Your USB printers will be managed via libusb. In case you run into problems, "
@@ -107,7 +95,6 @@ pkg_setup() {
elog "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."
@@ -127,31 +114,24 @@ pkg_setup() {
src_prepare() {
default
- # 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"
+ # Remove ".SILENT" rule for verbose output (bug #524338).
+ sed 's#^.SILENT:##g' -i Makedefs.in || die
- # Do not add -Werror even for live ebuilds
- sed '/WARNING_OPTIONS/s@-Werror@@' \
- -i config-scripts/cups-compiler.m4 || die
+ # Remove redefinition of _FORTIFY_SOURCE (bug #907683)
+ sed 's#-D_FORTIFY_SOURCE=3##g' -i config-scripts/cups-compiler.m4 || die
- AT_M4DIR=config-scripts eaclocal
- eautoconf
+ AT_M4DIR="config-scripts" eautoreconf
- # custom Makefiles
+ # Custom Makefiles
multilib_copy_sources
}
multilib_src_configure() {
export DSOFLAGS="${LDFLAGS}"
- einfo LINGUAS=\"${LINGUAS}\"
-
- # explicitly specify compiler wrt bug 524340
+ # Explicitly specify compiler wrt bug #524340
#
- # need to override KRB5CONFIG for proper flags
+ # Need to override KRB5CONFIG for proper flags
# https://github.com/apple/cups/issues/4423
local myeconfargs=(
CC="$(tc-getCC)"
@@ -159,13 +139,23 @@ multilib_src_configure() {
KRB5CONFIG="${EPREFIX}"/usr/bin/${CHOST}-krb5-config
--libdir="${EPREFIX}"/usr/$(get_libdir)
--localstatedir="${EPREFIX}"/var
+ # Follow Fedora permission setting
+ --with-cupsd-file-perm=0755
--with-exe-file-perm=755
+ --with-log-file-perm=0640
+ # Used by Debian, also prevents printers from getting
+ # disabled and users not knowing how to re-enable them
+ --with-error-policy=retry-job
+ # Used in Debian and Fedora
+ --enable-sync-on-close
+ #
--with-rundir="${EPREFIX}"/run/cups
+ --with-pkgconfpath="${EPREFIX}"/usr/$(get_libdir)/pkgconfig
--with-cups-user=lp
--with-cups-group=lp
--with-docdir="${EPREFIX}"/usr/share/cups/html
- --with-languages="${LINGUAS}"
- --with-system-groups=lpadmin
+ # See bug #863221 for adding root
+ --with-system-groups="root lpadmin"
--with-xinetd="${EPREFIX}"/etc/xinetd.d
$(multilib_native_use_enable acl)
$(use_enable dbus)
@@ -175,30 +165,40 @@ multilib_src_configure() {
$(use_enable kerberos gssapi)
$(multilib_native_use_enable pam)
$(use_enable static-libs static)
- $(use_enable threads)
- $(use_enable ssl gnutls)
- $(use_enable systemd)
+ $(use_enable test unit-tests)
+ # USE="ssl" => gnutls
+ # USE="ssl openssl" => openssl
+ $(use_with ssl tls $(usex openssl openssl gnutls))
+ $(use_with systemd ondemand systemd)
$(multilib_native_use_enable usb libusb)
- $(use_enable zeroconf avahi)
- --disable-dnssd
+ $(use_with zeroconf dnssd avahi)
$(multilib_is_native_abi && echo --enable-libpaper || echo --disable-libpaper)
)
+ # Handle empty LINGUAS properly, bug #771162
+ if [[ -n "${LINGUAS+x}" ]] ; then
+ myeconfargs+=(
+ --with-languages="${LINGUAS}"
+ )
+ fi
+
if tc-is-static-only; then
myeconfargs+=(
--disable-shared
)
fi
+ # Install in /usr/libexec always, instead of using /usr/lib/cups, as that
+ # makes more sense when facing multilib support.
+ sed -i -e 's:CUPS_SERVERBIN="$exec_prefix/lib/cups":CUPS_SERVERBIN="$exec_prefix/libexec/cups":g' configure ||die
+
econf "${myeconfargs[@]}"
- # 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
- # additional path corrections needed for prefix, see bug 597728
+ # Additional path corrections needed for prefix, see bug #597728
sed \
-e "s:ICONDIR.*:ICONDIR = ${EPREFIX}/usr/share/icons:" \
-e "s:INITDIR.*:INITDIR = ${EPREFIX}/etc:" \
@@ -216,6 +216,12 @@ multilib_src_compile() {
}
multilib_src_test() {
+ # Avoid using /tmp
+ export CUPS_TESTBASE="${T}"/cups-tests
+
+ mkdir "${T}"/cups-tests || die
+
+ # We only build some of CUPS for multilib, so can't run the tests.
multilib_is_native_abi && default
}
@@ -231,106 +237,82 @@ multilib_src_install() {
multilib_src_install_all() {
dodoc {CHANGES,CREDITS,README}.md
- # move the default config file to docs
+ # Move the default config file to docs
dodoc "${ED}"/etc/cups/cupsd.conf.default
- rm -f "${ED}"/etc/cups/cupsd.conf.default
+ rm "${ED}"/etc/cups/cupsd.conf.default || die
- # clean out cups init scripts
- rm -rf "${ED}"/etc/{init.d/cups,rc*,pam.d/cups}
+ # Clean out cups init scripts
+ rm -r "${ED}"/etc/{init.d/cups,rc*} || die
- # install our init script
+ # Install our init script
local neededservices=(
$(usex zeroconf avahi-daemon '')
$(usex dbus dbus '')
)
[[ -n ${neededservices[@]} ]] && neededservices="need ${neededservices[@]}"
- cp "${FILESDIR}"/cupsd.init.d-r3 "${T}"/cupsd || die
- sed -i \
- -e "s/@neededservices@/${neededservices}/" \
- "${T}"/cupsd || die
+ cp "${FILESDIR}"/cupsd.init.d-r4 "${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 pam ; then
+ rm "${ED}"/etc/pam.d/${PN} || die
+ pamd_mimic_system cups auth account
+ fi
if use xinetd ; then
- # correct path
- sed -i \
- -e "s:server = .*:server = /usr/libexec/cups/daemon/cups-lpd:" \
+ # 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
+ # 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
+ # Write permission for file owner (root), bug #296221
fperms u+w /etc/xinetd.d/cups-lpd
else
- # always configure with --with-xinetd= and clean up later,
+ # Always configure with --with-xinetd= and clean up later,
# bug #525604
- rm -rf "${ED}"/etc/xinetd.d
+ rm -r "${ED}"/etc/xinetd.d || die
fi
- keepdir /usr/libexec/cups/driver /usr/share/cups/{model,profiles} \
- /var/log/cups /var/spool/cups/tmp
-
keepdir /etc/cups/{interfaces,ppd,ssl}
if ! use X ; then
rm -r "${ED}"/usr/share/applications || die
fi
- # create /etc/cups/client.conf, bug #196967 and #266678
+ # Create /etc/cups/client.conf, bug #196967 and bug #266678
echo "ServerName ${EPREFIX}/run/cups/cups.sock" >> "${ED}"/etc/cups/client.conf
- # the following file is now provided by cups-filters:
+ # The following file is now provided by cups-filter:
rm -r "${ED}"/usr/share/cups/banners || die
- # the following are created by the init script
- rm -r "${ED}"/var/cache/cups || die
+ # The following are created by the init script
+ rm -r "${ED}"/var/cache || 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() {
- xdg_pkg_preinst
+ keepdir /usr/libexec/cups/driver /usr/share/cups/{model,profiles} /var/log/cups /var/spool/cups/tmp
}
pkg_postinst() {
- # Update desktop file database and gtk icon cache (bug 370059)
xdg_pkg_postinst
-
local v
for v in ${REPLACING_VERSIONS}; do
if ! ver_test ${v} -ge 2.2.2-r2 ; then
- echo
ewarn "The cupsd init script switched to using pidfiles. Shutting down"
ewarn "cupsd will fail the next time. To fix this, please run once as root"
ewarn " killall cupsd ; /etc/init.d/cupsd zap ; /etc/init.d/cupsd start"
- echo
break
fi
done
for v in ${REPLACING_VERSIONS}; do
- echo
+ elog
elog "For information about installing a printer and general cups setup"
elog "take a look at: https://wiki.gentoo.org/wiki/Printing"
- echo
break
done
-}
-pkg_postrm() {
- # Update desktop file database and gtk icon cache (bug 370059)
- xdg_pkg_postrm
+ optfeature_header "CUPS may need installing the following for certain features to work:"
+ use zeroconf && optfeature "local hostname resolution using a hostname.local naming scheme" sys-auth/nss-mdns
}
diff --git a/net-print/cups/cups-2.2.13.ebuild b/net-print/cups/cups-2.4.7-r1.ebuild
index efd23a0698bd..1dbd7ec1b326 100644
--- a/net-print/cups/cups-2.2.13.ebuild
+++ b/net-print/cups/cups-2.4.7-r1.ebuild
@@ -1,38 +1,46 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python2_7 )
+inherit autotools linux-info xdg multilib-minimal optfeature pam toolchain-funcs
-inherit autotools flag-o-matic linux-info xdg multilib-minimal pam python-single-r1 user java-pkg-opt-2 systemd toolchain-funcs
+MY_PV="${PV/_beta/b}"
+MY_PV="${MY_PV/_rc/rc}"
+MY_PV="${MY_PV/_p/op}"
+MY_P="${PN}-${MY_PV}"
-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
+if [[ ${PV} == *9999 ]] ; then
inherit git-r3
- EGIT_REPO_URI="https://github.com/apple/cups.git"
- if [[ ${PV} != 9999 ]]; then
- EGIT_BRANCH=branch-${PV/.9999}
- fi
+ EGIT_REPO_URI="https://github.com/OpenPrinting/cups.git"
+ [[ ${PV} != 9999 ]] && EGIT_BRANCH=branch-${PV/.9999}
else
- #SRC_URI="https://github.com/apple/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- SRC_URI="https://github.com/apple/cups/releases/download/v${PV}/${P}-source.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~m68k-mint"
+ SRC_URI="https://github.com/OpenPrinting/cups/releases/download/v${MY_PV}/cups-${MY_PV}-source.tar.gz"
+ if [[ ${PV} != *_beta* && ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+ fi
fi
+S="${WORKDIR}/${MY_P}"
+
DESCRIPTION="The Common Unix Printing System"
-HOMEPAGE="https://www.cups.org/"
+HOMEPAGE="https://www.cups.org/ https://github.com/OpenPrinting/cups"
-LICENSE="GPL-2"
+LICENSE="Apache-2.0"
SLOT="0"
-IUSE="acl dbus debug java kerberos lprng-compat pam python selinux +ssl static-libs systemd +threads usb X xinetd zeroconf"
+IUSE="acl dbus debug kerberos openssl pam selinux static-libs systemd test usb X xinetd zeroconf"
+
+# As of 2.4.2, they don't actually seem to be interactive (they pass some flags
+# by default to input for us), but they fail on some greyscale issue w/ poppler?
+RESTRICT="!test? ( test ) test"
-CDEPEND="
- app-text/libpaper
+BDEPEND="
+ acct-group/lp
+ acct-group/lpadmin
+ virtual/pkgconfig
+"
+DEPEND="
+ app-text/libpaper:=
sys-libs/zlib
acl? (
kernel_linux? (
@@ -41,47 +49,28 @@ CDEPEND="
)
)
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? ( sys-libs/pam )
- python? ( ${PYTHON_DEPS} )
- ssl? ( >=net-libs/gnutls-2.12.23-r6:0=[${MULTILIB_USEDEP}] )
+ !pam? ( virtual/libcrypt:= )
+ !openssl? ( >=net-libs/gnutls-2.12.23-r6:=[${MULTILIB_USEDEP}] )
+ openssl? ( dev-libs/openssl:=[${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}] )
-"
-
-DEPEND="${CDEPEND}"
-BDEPEND="
- acct-group/lp
- >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
+ zeroconf? ( >=net-dns/avahi-0.6.31-r2[dbus,${MULTILIB_USEDEP}] )
"
-
-RDEPEND="${CDEPEND}
+RDEPEND="
+ ${DEPEND}
acct-group/lp
+ acct-group/lpadmin
selinux? ( sec-policy/selinux-cups )
"
-
PDEPEND=">=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"
-
-# systemd-socket.patch from Fedora
PATCHES=(
- "${FILESDIR}/${PN}-2.2.0-dont-compress-manpages.patch"
- "${FILESDIR}/${PN}-2.2.6-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.1-xinetd-installation-fix.patch"
+ "${FILESDIR}/${PN}-2.4.1-nostrip.patch"
+ "${FILESDIR}/${PN}-2.4.1-user-AR.patch"
)
MULTILIB_CHOST_TOOLS=(
@@ -89,19 +78,13 @@ MULTILIB_CHOST_TOOLS=(
)
pkg_setup() {
- #enewgroup lp -> acct-group/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; this should now work in most cases (bug 501122)
+ # Recheck that we don't have usblp to collide with libusb; this should now work in most cases (bug #501122)
if use usb; then
if linux_chkconfig_present USB_PRINTER; then
elog "Your USB printers will be managed via libusb. In case you run into problems, "
@@ -110,7 +93,6 @@ pkg_setup() {
elog "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."
@@ -130,27 +112,24 @@ pkg_setup() {
src_prepare() {
default
- # Remove ".SILENT" rule for verbose output (bug 524338).
- sed 's#^.SILENT:##g' -i "${S}"/Makedefs.in || die "sed failed"
+ # Remove ".SILENT" rule for verbose output (bug #524338).
+ sed 's#^.SILENT:##g' -i Makedefs.in || die
- # Fix install-sh, posix sh does not have 'function'.
- sed 's#function gzipcp#gzipcp()#g' -i "${S}/install-sh"
+ # Remove redefinition of _FORTIFY_SOURCE (bug #907683)
+ sed 's#-D_FORTIFY_SOURCE=3##g' -i config-scripts/cups-compiler.m4 || die
- AT_M4DIR=config-scripts eaclocal
- eautoconf
+ AT_M4DIR="config-scripts" eautoreconf
- # custom Makefiles
+ # Custom Makefiles
multilib_copy_sources
}
multilib_src_configure() {
export DSOFLAGS="${LDFLAGS}"
- einfo LINGUAS=\"${LINGUAS}\"
-
- # explicitly specify compiler wrt bug 524340
+ # Explicitly specify compiler wrt bug #524340
#
- # need to override KRB5CONFIG for proper flags
+ # Need to override KRB5CONFIG for proper flags
# https://github.com/apple/cups/issues/4423
local myeconfargs=(
CC="$(tc-getCC)"
@@ -158,50 +137,64 @@ multilib_src_configure() {
KRB5CONFIG="${EPREFIX}"/usr/bin/${CHOST}-krb5-config
--libdir="${EPREFIX}"/usr/$(get_libdir)
--localstatedir="${EPREFIX}"/var
+ # Follow Fedora permission setting
+ --with-cupsd-file-perm=0755
--with-exe-file-perm=755
+ --with-log-file-perm=0640
+ # Used by Debian, also prevents printers from getting
+ # disabled and users not knowing how to re-enable them
+ --with-error-policy=retry-job
+ # Used in Debian and Fedora
+ --enable-sync-on-close
+ #
--with-rundir="${EPREFIX}"/run/cups
+ --with-pkgconfpath="${EPREFIX}"/usr/$(get_libdir)/pkgconfig
--with-cups-user=lp
--with-cups-group=lp
--with-docdir="${EPREFIX}"/usr/share/cups/html
- --with-languages="${LINGUAS}"
- --with-system-groups=lpadmin
+ # See bug #863221 for adding root
+ --with-system-groups="root lpadmin"
--with-xinetd="${EPREFIX}"/etc/xinetd.d
$(multilib_native_use_enable acl)
$(use_enable dbus)
$(use_enable debug)
$(use_enable debug debug-guards)
$(use_enable debug debug-printfs)
- $(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)
+ $(use_enable test unit-tests)
+ --with-tls=$(usex openssl openssl gnutls)
+ $(use_with systemd ondemand systemd)
$(multilib_native_use_enable usb libusb)
- $(use_enable zeroconf avahi)
- --disable-dnssd
- --without-perl
- --without-php
+ $(use_with zeroconf dnssd avahi)
$(multilib_is_native_abi && echo --enable-libpaper || echo --disable-libpaper)
)
+ # Handle empty LINGUAS properly, bug #771162
+ if [[ -n "${LINGUAS+x}" ]] ; then
+ myeconfargs+=(
+ --with-languages="${LINGUAS}"
+ )
+ fi
+
if tc-is-static-only; then
myeconfargs+=(
--disable-shared
)
fi
+ # Install in /usr/libexec always, instead of using /usr/lib/cups, as that
+ # makes more sense when facing multilib support.
+ sed -i -e 's:CUPS_SERVERBIN="$exec_prefix/lib/cups":CUPS_SERVERBIN="$exec_prefix/libexec/cups":g' configure ||die
+
econf "${myeconfargs[@]}"
- # 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
- # additional path corrections needed for prefix, see bug 597728
+ # Additional path corrections needed for prefix, see bug #597728
sed \
-e "s:ICONDIR.*:ICONDIR = ${EPREFIX}/usr/share/icons:" \
-e "s:INITDIR.*:INITDIR = ${EPREFIX}/etc:" \
@@ -219,6 +212,12 @@ multilib_src_compile() {
}
multilib_src_test() {
+ # Avoid using /tmp
+ export CUPS_TESTBASE="${T}"/cups-tests
+
+ mkdir "${T}"/cups-tests || die
+
+ # We only build some of CUPS for multilib, so can't run the tests.
multilib_is_native_abi && default
}
@@ -234,106 +233,82 @@ multilib_src_install() {
multilib_src_install_all() {
dodoc {CHANGES,CREDITS,README}.md
- # move the default config file to docs
+ # Move the default config file to docs
dodoc "${ED}"/etc/cups/cupsd.conf.default
- rm -f "${ED}"/etc/cups/cupsd.conf.default
+ rm "${ED}"/etc/cups/cupsd.conf.default || die
- # clean out cups init scripts
- rm -rf "${ED}"/etc/{init.d/cups,rc*,pam.d/cups}
+ # Clean out cups init scripts
+ rm -r "${ED}"/etc/{init.d/cups,rc*} || die
- # install our init script
+ # Install our init script
local neededservices=(
$(usex zeroconf avahi-daemon '')
$(usex dbus dbus '')
)
[[ -n ${neededservices[@]} ]] && neededservices="need ${neededservices[@]}"
- cp "${FILESDIR}"/cupsd.init.d-r3 "${T}"/cupsd || die
- sed -i \
- -e "s/@neededservices@/${neededservices}/" \
- "${T}"/cupsd || die
+ cp "${FILESDIR}"/cupsd.init.d-r4 "${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 pam ; then
+ rm "${ED}"/etc/pam.d/${PN} || die
+ pamd_mimic_system cups auth account
+ fi
if use xinetd ; then
- # correct path
- sed -i \
- -e "s:server = .*:server = /usr/libexec/cups/daemon/cups-lpd:" \
+ # 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
+ # 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
+ # Write permission for file owner (root), bug #296221
fperms u+w /etc/xinetd.d/cups-lpd
else
- # always configure with --with-xinetd= and clean up later,
+ # Always configure with --with-xinetd= and clean up later,
# bug #525604
- rm -rf "${ED}"/etc/xinetd.d
+ rm -r "${ED}"/etc/xinetd.d || die
fi
- keepdir /usr/libexec/cups/driver /usr/share/cups/{model,profiles} \
- /var/log/cups /var/spool/cups/tmp
-
keepdir /etc/cups/{interfaces,ppd,ssl}
if ! use X ; then
rm -r "${ED}"/usr/share/applications || die
fi
- # create /etc/cups/client.conf, bug #196967 and #266678
+ # Create /etc/cups/client.conf, bug #196967 and bug #266678
echo "ServerName ${EPREFIX}/run/cups/cups.sock" >> "${ED}"/etc/cups/client.conf
- # the following file is now provided by cups-filters:
+ # The following file is now provided by cups-filter:
rm -r "${ED}"/usr/share/cups/banners || die
- # the following are created by the init script
- rm -r "${ED}"/var/cache/cups || die
+ # The following are created by the init script
+ rm -r "${ED}"/var/cache || 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() {
- xdg_pkg_preinst
+ keepdir /usr/libexec/cups/driver /usr/share/cups/{model,profiles} /var/log/cups /var/spool/cups/tmp
}
pkg_postinst() {
- # Update desktop file database and gtk icon cache (bug 370059)
xdg_pkg_postinst
-
local v
for v in ${REPLACING_VERSIONS}; do
if ! ver_test ${v} -ge 2.2.2-r2 ; then
- echo
ewarn "The cupsd init script switched to using pidfiles. Shutting down"
ewarn "cupsd will fail the next time. To fix this, please run once as root"
ewarn " killall cupsd ; /etc/init.d/cupsd zap ; /etc/init.d/cupsd start"
- echo
break
fi
done
for v in ${REPLACING_VERSIONS}; do
- echo
+ elog
elog "For information about installing a printer and general cups setup"
elog "take a look at: https://wiki.gentoo.org/wiki/Printing"
- echo
break
done
-}
-pkg_postrm() {
- # Update desktop file database and gtk icon cache (bug 370059)
- xdg_pkg_postrm
+ optfeature_header "CUPS may need installing the following for certain features to work:"
+ use zeroconf && optfeature "local hostname resolution using a hostname.local naming scheme" sys-auth/nss-mdns
}
diff --git a/net-print/cups/cups-2.4.7-r2.ebuild b/net-print/cups/cups-2.4.7-r2.ebuild
new file mode 100644
index 000000000000..51ce84608e2e
--- /dev/null
+++ b/net-print/cups/cups-2.4.7-r2.ebuild
@@ -0,0 +1,320 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools linux-info xdg multilib-minimal optfeature pam toolchain-funcs
+
+MY_PV="${PV/_beta/b}"
+MY_PV="${MY_PV/_rc/rc}"
+MY_PV="${MY_PV/_p/op}"
+MY_P="${PN}-${MY_PV}"
+
+if [[ ${PV} == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/OpenPrinting/cups.git"
+ [[ ${PV} != 9999 ]] && EGIT_BRANCH=branch-${PV/.9999}
+else
+ SRC_URI="https://github.com/OpenPrinting/cups/releases/download/v${MY_PV}/cups-${MY_PV}-source.tar.gz"
+ if [[ ${PV} != *_beta* && ${PV} != *_rc* ]] ; then
+ KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
+ fi
+fi
+
+S="${WORKDIR}/${MY_P}"
+
+DESCRIPTION="The Common Unix Printing System"
+HOMEPAGE="https://www.cups.org/ https://github.com/OpenPrinting/cups"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="acl dbus debug kerberos openssl pam selinux static-libs systemd test usb X xinetd zeroconf"
+
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ acct-group/lp
+ acct-group/lpadmin
+ virtual/pkgconfig
+"
+COMMON_DEPEND="
+ app-text/libpaper:=
+ sys-libs/zlib
+ acl? (
+ kernel_linux? (
+ sys-apps/acl
+ sys-apps/attr
+ )
+ )
+ dbus? ( >=sys-apps/dbus-1.6.18-r1[${MULTILIB_USEDEP}] )
+ kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
+ pam? ( sys-libs/pam )
+ !pam? ( virtual/libcrypt:= )
+ !openssl? ( >=net-libs/gnutls-2.12.23-r6:=[${MULTILIB_USEDEP}] )
+ openssl? ( dev-libs/openssl:=[${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[dbus,${MULTILIB_USEDEP}] )
+"
+# if libcupsfilters is installed, more tests are run. They fail without at least one of the two formats enabled.
+DEPEND="
+ ${COMMON_DEPEND}
+ test? ( || ( net-print/libcupsfilters[jpeg] net-print/libcupsfilters[png] ) )
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ acct-group/lp
+ acct-group/lpadmin
+ selinux? ( sec-policy/selinux-cups )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.4.1-nostrip.patch"
+ "${FILESDIR}/${PN}-2.4.1-user-AR.patch"
+)
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/cups-config
+)
+
+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; this should now work in most cases (bug #501122)
+ if use usb; then
+ if linux_chkconfig_present USB_PRINTER; then
+ elog "Your USB printers will be managed via libusb. In case you run into problems, "
+ elog "please try disabling USB_PRINTER support in your kernel or blacklisting the"
+ elog "usblp kernel module."
+ elog "Alternatively, just disable the usb useflag for cups (your printer will still work)."
+ fi
+ else
+ 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() {
+ default
+
+ # Remove ".SILENT" rule for verbose output (bug #524338).
+ sed 's#^.SILENT:##g' -i Makedefs.in || die
+
+ # Remove redefinition of _FORTIFY_SOURCE (bug #907683)
+ sed 's#-D_FORTIFY_SOURCE=3##g' -i config-scripts/cups-compiler.m4 || die
+
+ AT_M4DIR="config-scripts" eautoreconf
+
+ # Custom Makefiles
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ export DSOFLAGS="${LDFLAGS}"
+
+ # Explicitly specify compiler wrt bug #524340
+ #
+ # Need to override KRB5CONFIG for proper flags
+ # https://github.com/apple/cups/issues/4423
+ local myeconfargs=(
+ CC="$(tc-getCC)"
+ CXX="$(tc-getCXX)"
+ KRB5CONFIG="${EPREFIX}"/usr/bin/${CHOST}-krb5-config
+ --libdir="${EPREFIX}"/usr/$(get_libdir)
+ --localstatedir="${EPREFIX}"/var
+ # Follow Fedora permission setting
+ --with-cupsd-file-perm=0755
+ --with-exe-file-perm=755
+ --with-log-file-perm=0640
+ # Used by Debian, also prevents printers from getting
+ # disabled and users not knowing how to re-enable them
+ --with-error-policy=retry-job
+ # Used in Debian and Fedora
+ --enable-sync-on-close
+ #
+ --with-rundir="${EPREFIX}"/run/cups
+ --with-pkgconfpath="${EPREFIX}"/usr/$(get_libdir)/pkgconfig
+ --with-cups-user=lp
+ --with-cups-group=lp
+ --with-docdir="${EPREFIX}"/usr/share/cups/html
+ # See bug #863221 for adding root
+ --with-system-groups="root lpadmin"
+ --with-xinetd="${EPREFIX}"/etc/xinetd.d
+ $(multilib_native_use_enable acl)
+ $(use_enable dbus)
+ $(use_enable debug)
+ $(use_enable debug debug-guards)
+ $(use_enable debug debug-printfs)
+ $(use_enable kerberos gssapi)
+ $(multilib_native_use_enable pam)
+ $(use_enable static-libs static)
+ --with-tls=$(usex openssl openssl gnutls)
+ $(use_with systemd ondemand systemd)
+ $(multilib_native_use_enable usb libusb)
+ $(use_with zeroconf dnssd avahi)
+ $(multilib_is_native_abi && echo --enable-libpaper || echo --disable-libpaper)
+ )
+
+ # Handle empty LINGUAS properly, bug #771162
+ if [[ -n "${LINGUAS+x}" ]] ; then
+ myeconfargs+=(
+ --with-languages="${LINGUAS}"
+ )
+ fi
+
+ if tc-is-static-only; then
+ myeconfargs+=(
+ --disable-shared
+ )
+ fi
+
+ # Install in /usr/libexec always, instead of using /usr/lib/cups, as that
+ # makes more sense when facing multilib support.
+ sed -i -e 's:CUPS_SERVERBIN="$exec_prefix/lib/cups":CUPS_SERVERBIN="$exec_prefix/libexec/cups":g' configure ||die
+
+ econf "${myeconfargs[@]}"
+
+ 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
+
+ # Additional path corrections needed for prefix, see bug #597728
+ sed \
+ -e "s:ICONDIR.*:ICONDIR = ${EPREFIX}/usr/share/icons:" \
+ -e "s:INITDIR.*:INITDIR = ${EPREFIX}/etc:" \
+ -e "s:DBUSDIR.*:DBUSDIR = ${EPREFIX}/etc/dbus-1:" \
+ -e "s:MENUDIR.*:MENUDIR = ${EPREFIX}/usr/share/applications:" \
+ -i Makedefs || die
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi; then
+ default
+ else
+ emake libs
+ fi
+}
+
+multilib_src_test() {
+ # Avoid using /tmp
+ export CUPS_TESTBASE="${T}"/cups-tests
+
+ mkdir "${T}"/cups-tests || die
+
+ # We only build some of CUPS for multilib, so can't run the tests.
+ if multilib_is_native_abi; then
+ # avoid building *and running* test binaries in src_compile
+ # https://github.com/OpenPrinting/cups/commit/b1d42061e9286f50eefc851ed906d17c6e80c4b0
+ emake UNITTESTS=unittests
+ default
+ fi
+}
+
+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}.md
+
+ # Move the default config file to docs
+ dodoc "${ED}"/etc/cups/cupsd.conf.default
+ rm "${ED}"/etc/cups/cupsd.conf.default || die
+
+ # Clean out cups init scripts
+ rm -r "${ED}"/etc/{init.d/cups,rc*} || die
+
+ # Install our init script
+ local neededservices=(
+ $(usex zeroconf avahi-daemon '')
+ $(usex dbus dbus '')
+ )
+ [[ -n ${neededservices[@]} ]] && neededservices="need ${neededservices[@]}"
+ cp "${FILESDIR}"/cupsd.init.d-r4 "${T}"/cupsd || die
+ sed -i -e "s/@neededservices@/${neededservices}/" "${T}"/cupsd || die
+ doinitd "${T}"/cupsd
+
+ if use pam ; then
+ rm "${ED}"/etc/pam.d/${PN} || die
+ pamd_mimic_system cups auth account
+ fi
+
+ 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
+ else
+ # Always configure with --with-xinetd= and clean up later,
+ # bug #525604
+ rm -r "${ED}"/etc/xinetd.d || die
+ fi
+
+ keepdir /etc/cups/{interfaces,ppd,ssl}
+
+ if ! use X ; then
+ rm -r "${ED}"/usr/share/applications || die
+ fi
+
+ # Create /etc/cups/client.conf, bug #196967 and bug #266678
+ echo "ServerName ${EPREFIX}/run/cups/cups.sock" >> "${ED}"/etc/cups/client.conf
+
+ # The following file is now provided by cups-filter:
+ rm -r "${ED}"/usr/share/cups/banners || die
+
+ # The following are created by the init script
+ rm -r "${ED}"/var/cache || die
+ rm -r "${ED}"/run || die
+
+ keepdir /usr/libexec/cups/driver /usr/share/cups/{model,profiles} /var/log/cups /var/spool/cups/tmp
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ local v
+
+ for v in ${REPLACING_VERSIONS}; do
+ if ! ver_test ${v} -ge 2.2.2-r2 ; then
+ ewarn "The cupsd init script switched to using pidfiles. Shutting down"
+ ewarn "cupsd will fail the next time. To fix this, please run once as root"
+ ewarn " killall cupsd ; /etc/init.d/cupsd zap ; /etc/init.d/cupsd start"
+ break
+ fi
+ done
+
+ for v in ${REPLACING_VERSIONS}; do
+ elog
+ elog "For information about installing a printer and general cups setup"
+ elog "take a look at: https://wiki.gentoo.org/wiki/Printing"
+ break
+ done
+
+ optfeature_header "CUPS may need installing the following for certain features to work:"
+ use zeroconf && optfeature "local hostname resolution using a hostname.local naming scheme" sys-auth/nss-mdns
+}
diff --git a/net-print/cups/cups-9999.ebuild b/net-print/cups/cups-9999.ebuild
index 241cb46e4268..3d6b8b8cac30 100644
--- a/net-print/cups/cups-9999.ebuild
+++ b/net-print/cups/cups-9999.ebuild
@@ -1,39 +1,46 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python2_7 )
+inherit autotools linux-info xdg multilib-minimal optfeature pam toolchain-funcs
-inherit autotools flag-o-matic linux-info xdg multilib-minimal pam user systemd toolchain-funcs
-
-MY_PV="${PV/_rc/rc}"
-MY_PV="${MY_PV/_beta/b}"
+MY_PV="${PV/_beta/b}"
+MY_PV="${MY_PV/_rc/rc}"
+MY_PV="${MY_PV/_p/op}"
MY_P="${PN}-${MY_PV}"
-if [[ ${PV} == *9999 ]]; then
+if [[ ${PV} == *9999 ]] ; then
inherit git-r3
- EGIT_REPO_URI="https://github.com/apple/cups.git"
- if [[ ${PV} != 9999 ]]; then
- EGIT_BRANCH=branch-${PV/.9999}
- fi
+ EGIT_REPO_URI="https://github.com/OpenPrinting/cups.git"
+ [[ ${PV} != 9999 ]] && EGIT_BRANCH=branch-${PV/.9999}
else
- #SRC_URI="https://github.com/apple/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- SRC_URI="https://github.com/apple/cups/releases/download/v${MY_PV}/${MY_P}-source.tar.gz"
- if [[ "${PV}" != *_beta* ]] && [[ "${PV}" != *_rc* ]] ; then
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~m68k-mint"
+ SRC_URI="https://github.com/OpenPrinting/cups/releases/download/v${MY_PV}/cups-${MY_PV}-source.tar.gz"
+ if [[ ${PV} != *_beta* && ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
fi
+S="${WORKDIR}/${MY_P}"
+
DESCRIPTION="The Common Unix Printing System"
-HOMEPAGE="https://www.cups.org/"
+HOMEPAGE="https://www.cups.org/ https://github.com/OpenPrinting/cups"
LICENSE="Apache-2.0"
SLOT="0"
-IUSE="acl dbus debug kerberos lprng-compat pam selinux +ssl static-libs systemd +threads usb X xinetd zeroconf"
+IUSE="acl dbus debug kerberos openssl pam selinux static-libs systemd test usb X xinetd zeroconf"
+
+# As of 2.4.2, they don't actually seem to be interactive (they pass some flags
+# by default to input for us), but they fail on some greyscale issue w/ poppler?
+RESTRICT="!test? ( test ) test"
-CDEPEND="
- app-text/libpaper
+BDEPEND="
+ acct-group/lp
+ acct-group/lpadmin
+ virtual/pkgconfig
+"
+DEPEND="
+ app-text/libpaper:=
sys-libs/zlib
acl? (
kernel_linux? (
@@ -43,62 +50,41 @@ CDEPEND="
)
dbus? ( >=sys-apps/dbus-1.6.18-r1[${MULTILIB_USEDEP}] )
kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
- !lprng-compat? ( !net-print/lprng )
pam? ( sys-libs/pam )
- ssl? ( >=net-libs/gnutls-2.12.23-r6:0=[${MULTILIB_USEDEP}] )
+ !pam? ( virtual/libcrypt:= )
+ !openssl? ( >=net-libs/gnutls-2.12.23-r6:=[${MULTILIB_USEDEP}] )
+ openssl? ( dev-libs/openssl:=[${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}] )
+ zeroconf? ( >=net-dns/avahi-0.6.31-r2[dbus,${MULTILIB_USEDEP}] )
"
-
-DEPEND="${CDEPEND}"
-BDEPEND="
- acct-group/lp
- >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
-"
-
-RDEPEND="${CDEPEND}
+RDEPEND="
+ ${DEPEND}
acct-group/lp
+ acct-group/lpadmin
selinux? ( sec-policy/selinux-cups )
"
-
PDEPEND=">=net-print/cups-filters-1.0.43"
-REQUIRED_USE="
- usb? ( threads )
-"
-
-# upstream includes an interactive test which is a nono for gentoo
-RESTRICT="test"
-
-# systemd-socket.patch from Fedora
PATCHES=(
- "${FILESDIR}/${PN}-2.2.6-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.1-xinetd-installation-fix.patch"
+ "${FILESDIR}/${PN}-2.4.1-nostrip.patch"
+ "${FILESDIR}/${PN}-2.4.1-user-AR.patch"
)
MULTILIB_CHOST_TOOLS=(
/usr/bin/cups-config
)
-S="${WORKDIR}/${MY_P}"
-
pkg_setup() {
- #enewgroup lp -> acct-group/lp
- enewuser lp -1 -1 -1 lp
- enewgroup lpadmin 106
-
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; this should now work in most cases (bug 501122)
+ # Recheck that we don't have usblp to collide with libusb; this should now work in most cases (bug #501122)
if use usb; then
if linux_chkconfig_present USB_PRINTER; then
elog "Your USB printers will be managed via libusb. In case you run into problems, "
@@ -107,7 +93,6 @@ pkg_setup() {
elog "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."
@@ -127,31 +112,24 @@ pkg_setup() {
src_prepare() {
default
- # 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"
+ # Remove ".SILENT" rule for verbose output (bug #524338).
+ sed 's#^.SILENT:##g' -i Makedefs.in || die
- # Do not add -Werror even for live ebuilds
- sed '/WARNING_OPTIONS/s@-Werror@@' \
- -i config-scripts/cups-compiler.m4 || die
+ # Remove redefinition of _FORTIFY_SOURCE (bug #907683)
+ sed 's#-D_FORTIFY_SOURCE=3##g' -i config-scripts/cups-compiler.m4 || die
- AT_M4DIR=config-scripts eaclocal
- eautoconf
+ AT_M4DIR="config-scripts" eautoreconf
- # custom Makefiles
+ # Custom Makefiles
multilib_copy_sources
}
multilib_src_configure() {
export DSOFLAGS="${LDFLAGS}"
- einfo LINGUAS=\"${LINGUAS}\"
-
- # explicitly specify compiler wrt bug 524340
+ # Explicitly specify compiler wrt bug #524340
#
- # need to override KRB5CONFIG for proper flags
+ # Need to override KRB5CONFIG for proper flags
# https://github.com/apple/cups/issues/4423
local myeconfargs=(
CC="$(tc-getCC)"
@@ -159,13 +137,23 @@ multilib_src_configure() {
KRB5CONFIG="${EPREFIX}"/usr/bin/${CHOST}-krb5-config
--libdir="${EPREFIX}"/usr/$(get_libdir)
--localstatedir="${EPREFIX}"/var
+ # Follow Fedora permission setting
+ --with-cupsd-file-perm=0755
--with-exe-file-perm=755
+ --with-log-file-perm=0640
+ # Used by Debian, also prevents printers from getting
+ # disabled and users not knowing how to re-enable them
+ --with-error-policy=retry-job
+ # Used in Debian and Fedora
+ --enable-sync-on-close
+ #
--with-rundir="${EPREFIX}"/run/cups
+ --with-pkgconfpath="${EPREFIX}"/usr/$(get_libdir)/pkgconfig
--with-cups-user=lp
--with-cups-group=lp
--with-docdir="${EPREFIX}"/usr/share/cups/html
- --with-languages="${LINGUAS}"
- --with-system-groups=lpadmin
+ # See bug #863221 for adding root
+ --with-system-groups="root lpadmin"
--with-xinetd="${EPREFIX}"/etc/xinetd.d
$(multilib_native_use_enable acl)
$(use_enable dbus)
@@ -175,30 +163,38 @@ multilib_src_configure() {
$(use_enable kerberos gssapi)
$(multilib_native_use_enable pam)
$(use_enable static-libs static)
- $(use_enable threads)
- $(use_enable ssl gnutls)
- $(use_enable systemd)
+ $(use_enable test unit-tests)
+ --with-tls=$(usex openssl openssl gnutls)
+ $(use_with systemd ondemand systemd)
$(multilib_native_use_enable usb libusb)
- $(use_enable zeroconf avahi)
- --disable-dnssd
+ $(use_with zeroconf dnssd avahi)
$(multilib_is_native_abi && echo --enable-libpaper || echo --disable-libpaper)
)
+ # Handle empty LINGUAS properly, bug #771162
+ if [[ -n "${LINGUAS+x}" ]] ; then
+ myeconfargs+=(
+ --with-languages="${LINGUAS}"
+ )
+ fi
+
if tc-is-static-only; then
myeconfargs+=(
--disable-shared
)
fi
+ # Install in /usr/libexec always, instead of using /usr/lib/cups, as that
+ # makes more sense when facing multilib support.
+ sed -i -e 's:CUPS_SERVERBIN="$exec_prefix/lib/cups":CUPS_SERVERBIN="$exec_prefix/libexec/cups":g' configure ||die
+
econf "${myeconfargs[@]}"
- # 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
- # additional path corrections needed for prefix, see bug 597728
+ # Additional path corrections needed for prefix, see bug #597728
sed \
-e "s:ICONDIR.*:ICONDIR = ${EPREFIX}/usr/share/icons:" \
-e "s:INITDIR.*:INITDIR = ${EPREFIX}/etc:" \
@@ -216,6 +212,12 @@ multilib_src_compile() {
}
multilib_src_test() {
+ # Avoid using /tmp
+ export CUPS_TESTBASE="${T}"/cups-tests
+
+ mkdir "${T}"/cups-tests || die
+
+ # We only build some of CUPS for multilib, so can't run the tests.
multilib_is_native_abi && default
}
@@ -231,106 +233,82 @@ multilib_src_install() {
multilib_src_install_all() {
dodoc {CHANGES,CREDITS,README}.md
- # move the default config file to docs
+ # Move the default config file to docs
dodoc "${ED}"/etc/cups/cupsd.conf.default
- rm -f "${ED}"/etc/cups/cupsd.conf.default
+ rm "${ED}"/etc/cups/cupsd.conf.default || die
- # clean out cups init scripts
- rm -rf "${ED}"/etc/{init.d/cups,rc*,pam.d/cups}
+ # Clean out cups init scripts
+ rm -r "${ED}"/etc/{init.d/cups,rc*} || die
- # install our init script
+ # Install our init script
local neededservices=(
$(usex zeroconf avahi-daemon '')
$(usex dbus dbus '')
)
[[ -n ${neededservices[@]} ]] && neededservices="need ${neededservices[@]}"
- cp "${FILESDIR}"/cupsd.init.d-r3 "${T}"/cupsd || die
- sed -i \
- -e "s/@neededservices@/${neededservices}/" \
- "${T}"/cupsd || die
+ cp "${FILESDIR}"/cupsd.init.d-r4 "${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 pam ; then
+ rm "${ED}"/etc/pam.d/${PN} || die
+ pamd_mimic_system cups auth account
+ fi
if use xinetd ; then
- # correct path
- sed -i \
- -e "s:server = .*:server = /usr/libexec/cups/daemon/cups-lpd:" \
+ # 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
+ # 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
+ # Write permission for file owner (root), bug #296221
fperms u+w /etc/xinetd.d/cups-lpd
else
- # always configure with --with-xinetd= and clean up later,
+ # Always configure with --with-xinetd= and clean up later,
# bug #525604
- rm -rf "${ED}"/etc/xinetd.d
+ rm -r "${ED}"/etc/xinetd.d || die
fi
- keepdir /usr/libexec/cups/driver /usr/share/cups/{model,profiles} \
- /var/log/cups /var/spool/cups/tmp
-
keepdir /etc/cups/{interfaces,ppd,ssl}
if ! use X ; then
rm -r "${ED}"/usr/share/applications || die
fi
- # create /etc/cups/client.conf, bug #196967 and #266678
+ # Create /etc/cups/client.conf, bug #196967 and bug #266678
echo "ServerName ${EPREFIX}/run/cups/cups.sock" >> "${ED}"/etc/cups/client.conf
- # the following file is now provided by cups-filters:
+ # The following file is now provided by cups-filter:
rm -r "${ED}"/usr/share/cups/banners || die
- # the following are created by the init script
- rm -r "${ED}"/var/cache/cups || die
+ # The following are created by the init script
+ rm -r "${ED}"/var/cache || 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() {
- xdg_pkg_preinst
+ keepdir /usr/libexec/cups/driver /usr/share/cups/{model,profiles} /var/log/cups /var/spool/cups/tmp
}
pkg_postinst() {
- # Update desktop file database and gtk icon cache (bug 370059)
xdg_pkg_postinst
-
local v
for v in ${REPLACING_VERSIONS}; do
if ! ver_test ${v} -ge 2.2.2-r2 ; then
- echo
ewarn "The cupsd init script switched to using pidfiles. Shutting down"
ewarn "cupsd will fail the next time. To fix this, please run once as root"
ewarn " killall cupsd ; /etc/init.d/cupsd zap ; /etc/init.d/cupsd start"
- echo
break
fi
done
for v in ${REPLACING_VERSIONS}; do
- echo
+ elog
elog "For information about installing a printer and general cups setup"
elog "take a look at: https://wiki.gentoo.org/wiki/Printing"
- echo
break
done
-}
-pkg_postrm() {
- # Update desktop file database and gtk icon cache (bug 370059)
- xdg_pkg_postrm
+ optfeature_header "CUPS may need installing the following for certain features to work:"
+ use zeroconf && optfeature "local hostname resolution using a hostname.local naming scheme" sys-auth/nss-mdns
}
diff --git a/net-print/cups/files/cups-1.4.4-nostrip.patch b/net-print/cups/files/cups-1.4.4-nostrip.patch
deleted file mode 100644
index cd2b07042cec..000000000000
--- a/net-print/cups/files/cups-1.4.4-nostrip.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-# 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-2.0.1-xinetd-installation-fix.patch b/net-print/cups/files/cups-2.0.1-xinetd-installation-fix.patch
deleted file mode 100644
index 2e8419e7675a..000000000000
--- a/net-print/cups/files/cups-2.0.1-xinetd-installation-fix.patch
+++ /dev/null
@@ -1,9 +0,0 @@
---- 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-rename-systemd-service-files.patch b/net-print/cups/files/cups-2.0.2-rename-systemd-service-files.patch
deleted file mode 100644
index 16f677ba7a37..000000000000
--- a/net-print/cups/files/cups-2.0.2-rename-systemd-service-files.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-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.2.0-dont-compress-manpages.patch b/net-print/cups/files/cups-2.2.0-dont-compress-manpages.patch
deleted file mode 100644
index 7b61b39f16ad..000000000000
--- a/net-print/cups/files/cups-2.2.0-dont-compress-manpages.patch
+++ /dev/null
@@ -1,17 +0,0 @@
---- cups-2.2.0/config-scripts/cups-manpages.m4
-+++ cups-2.2.0/config-scripts/cups-manpages.m4
-@@ -53,10 +53,10 @@
- ;;
- Linux* | GNU* | Darwin*)
- # Linux, GNU Hurd, and macOS
-- 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-2.2.6-fix-install-perms.patch b/net-print/cups/files/cups-2.2.6-fix-install-perms.patch
deleted file mode 100644
index a8f007446f2d..000000000000
--- a/net-print/cups/files/cups-2.2.6-fix-install-perms.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- cups-2.2.6/Makedefs.in
-+++ cups-2.2.6/Makedefs.in
-@@ -49,12 +49,12 @@
- #
-
- INSTALL_BIN = @LIBTOOL_INSTALL@ $(INSTALL) -c -m @CUPS_EXE_FILE_PERM@ @INSTALL_STRIP@
--INSTALL_COMPDATA = $(INSTALL) -c -m 444 @INSTALL_GZIP@
-+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@ $(INSTALL) -c -m @CUPS_EXE_FILE_PERM@ @INSTALL_STRIP@
--INSTALL_MAN = $(INSTALL) -c -m 444
-+INSTALL_MAN = $(INSTALL) -c -m 644
- INSTALL_SCRIPT = $(INSTALL) -c -m @CUPS_EXE_FILE_PERM@
-
- #
diff --git a/net-print/cups/files/cups-2.4.1-nostrip.patch b/net-print/cups/files/cups-2.4.1-nostrip.patch
new file mode 100644
index 000000000000..5862ce178255
--- /dev/null
+++ b/net-print/cups/files/cups-2.4.1-nostrip.patch
@@ -0,0 +1,11 @@
+--- a/config-scripts/cups-compiler.m4 2022-01-27 12:11:42.000000000 +0100
++++ b/config-scripts/cups-compiler.m4 2022-05-01 11:24:58.855033882 +0200
+@@ -30,8 +30,6 @@
+ dnl For debugging, keep symbols, otherwise strip them...
+ AS_IF([test x$enable_debug = xyes -a "x$OPTIM" = x], [
+ OPTIM="-g"
+-], [
+- INSTALL_STRIP="-s"
+ ])
+
+ dnl Debug printfs can slow things down, so provide a separate option for that
diff --git a/net-print/cups/files/cups-2.4.1-user-AR.patch b/net-print/cups/files/cups-2.4.1-user-AR.patch
new file mode 100644
index 000000000000..edbecd6ed9fa
--- /dev/null
+++ b/net-print/cups/files/cups-2.4.1-user-AR.patch
@@ -0,0 +1,21 @@
+--- a/config-scripts/cups-common.m4
++++ b/config-scripts/cups-common.m4
+@@ -39,15 +39,15 @@
+ AC_PROG_CPP
+ AC_PROG_CXX
+ AC_PROG_RANLIB
+-AC_PATH_PROG([AR], [ar])
++AC_CHECK_TOOL([AR], [ar])
+ AC_PATH_PROG([CHMOD], [chmod])
+ AC_PATH_PROG([GZIPPROG], [gzip])
+ AC_MSG_CHECKING([for install-sh script])
+ INSTALL="`pwd`/install-sh"
+ AC_SUBST([INSTALL])
+ AC_MSG_RESULT([using $INSTALL])
+-AC_PATH_PROG([LD], [ld])
+-AC_PATH_PROG([LN], [ln])
++AC_CHECK_TOOL([LD], [ld])
++AC_CHECK_TOOL([LN], [ln])
+ AC_PATH_PROG([MKDIR], [mkdir])
+ AC_PATH_PROG([MV], [mv])
+ AC_PATH_PROG([RM], [rm])
diff --git a/net-print/cups/files/cupsd.init.d-r3 b/net-print/cups/files/cupsd.init.d-r4
index 2f563e4c7698..3f65258fbe43 100644
--- a/net-print/cups/files/cupsd.init.d-r3
+++ b/net-print/cups/files/cupsd.init.d-r4
@@ -1,10 +1,10 @@
#!/sbin/openrc-run
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
description="The Common Unix Printing System daemon"
command="/usr/sbin/cupsd"
command_args="-f -c /etc/cups/cupsd.conf -s /etc/cups/cups-files.conf"
-pidfile="/var/run/cupsd.pid"
+pidfile="/run/cupsd.pid"
start_stop_daemon_args="-b -m --pidfile ${pidfile}"
depend() {
diff --git a/net-print/cups/metadata.xml b/net-print/cups/metadata.xml
index eefca8bd29d2..d4081ef99041 100644
--- a/net-print/cups/metadata.xml
+++ b/net-print/cups/metadata.xml
@@ -1,23 +1,15 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>printing@gentoo.org</email>
- <name>Gentoo Printing Project</name>
- </maintainer>
- <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>
- <upstream>
- <remote-id type="cpe">cpe:/a:apple:cups</remote-id>
- <remote-id type="github">apple/cups</remote-id>
- </upstream>
+ <maintainer type="project">
+ <email>printing@gentoo.org</email>
+ <name>Gentoo Printing Project</name>
+ </maintainer>
+ <use>
+ <flag name="openssl">Use <pkg>dev-libs/openssl</pkg> instead of <pkg>net-libs/gnutls</pkg> for TLS support</flag>
+ </use>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:apple:cups</remote-id>
+ <remote-id type="github">OpenPrinting/cups</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/net-print/dymo-cups-drivers/dymo-cups-drivers-1.4.0-r1.ebuild b/net-print/dymo-cups-drivers/dymo-cups-drivers-1.4.0-r2.ebuild
index f5dba4224b3f..bb216fa485f3 100644
--- a/net-print/dymo-cups-drivers/dymo-cups-drivers-1.4.0-r1.ebuild
+++ b/net-print/dymo-cups-drivers/dymo-cups-drivers-1.4.0-r2.ebuild
@@ -1,8 +1,8 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit eutils autotools
+inherit autotools
DESCRIPTION="Dymo SDK for LabelWriter/LabelManager printers"
HOMEPAGE="https://newellrubbermaid.secure.force.com/dymopkb"
@@ -12,20 +12,21 @@ S="${WORKDIR}/${P}.5"
LICENSE="GPL-2"
SLOT="0"
-IUSE="test usb_modeswitch"
+IUSE="test usb-modeswitch"
RESTRICT="!test? ( test )"
KEYWORDS="~amd64 ~x86"
-RDEPEND="net-print/cups"
+RDEPEND=">=net-print/cups-2.3.0"
DEPEND="${RDEPEND}
test? ( dev-util/cppunit )
- usb_modeswitch? ( sys-apps/usb_modeswitch )"
+ usb-modeswitch? ( sys-apps/usb_modeswitch )"
PATCHES=(
"${FILESDIR}"/${PN}-1.2.0-cxxflags.patch
"${FILESDIR}"/port_to_newer_cups_headers.patch
"${FILESDIR}"/dymo-cups-drivers-1.4.0.5-flexible-tests.patch
+ "${FILESDIR}"/cups-2.3.0-headers.patch
)
DOCS=( AUTHORS README ChangeLog docs/SAMPLES )
@@ -38,9 +39,7 @@ src_prepare() {
src_install() {
default
-
- insinto /usr/share/doc/${PF}
- doins docs/*.{txt,rtf,ps,png}
+ dodoc docs/*.{txt,rtf,ps,png}
}
src_test() {
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
deleted file mode 100644
index 3e7e04d9b913..000000000000
--- a/net-print/dymo-cups-drivers/dymo-cups-drivers-1.4.0.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit eutils autotools
-
-DESCRIPTION="Dymo SDK for LabelWriter/LabelManager printers"
-HOMEPAGE="https://newellrubbermaid.secure.force.com/dymopkb"
-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
- epatch "${FILESDIR}"/port_to_newer_cups_headers.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/cups-2.3.0-headers.patch b/net-print/dymo-cups-drivers/files/cups-2.3.0-headers.patch
new file mode 100644
index 000000000000..059c3d0c29c1
--- /dev/null
+++ b/net-print/dymo-cups-drivers/files/cups-2.3.0-headers.patch
@@ -0,0 +1,24 @@
+https://github.com/codeprofis/dymo-cups-drivers/commit/948abc3500f45578a386182c0d2a55bcfcbc2c66.patch
+
+From 948abc3500f45578a386182c0d2a55bcfcbc2c66 Mon Sep 17 00:00:00 2001
+From: Florian Knodt <adlerweb@adlerweb.info>
+Date: Fri, 28 Feb 2020 23:26:34 +0100
+Subject: [PATCH] Add missing backend header. Fixes #11.
+
+---
+ src/common/CupsPrintEnvironment.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/common/CupsPrintEnvironment.h b/src/common/CupsPrintEnvironment.h
+index 23043d8..76ecefc 100644
+--- a/src/common/CupsPrintEnvironment.h
++++ b/src/common/CupsPrintEnvironment.h
+@@ -21,6 +21,8 @@
+ #ifndef h952b1c81_8931_433a_8479_7ae6d8e85a86
+ #define h952b1c81_8931_433a_8479_7ae6d8e85a86
+
++#include <cups/backend.h>
++#include <cups/sidechannel.h>
+ #include "PrinterDriver.h"
+
+ namespace DymoPrinterDriver
diff --git a/net-print/dymo-cups-drivers/metadata.xml b/net-print/dymo-cups-drivers/metadata.xml
index 169f1f54e1f4..8f9a9cc695e2 100644
--- a/net-print/dymo-cups-drivers/metadata.xml
+++ b/net-print/dymo-cups-drivers/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>robbat2@gentoo.org</email>
<description>Occasional access to Dymo LabelWriter 450 Turbo</description>
</maintainer>
<use>
- <flag name="usb_modeswitch">Include usb_modeswitch for some hardware (bug #601242)</flag>
+ <flag name="usb-modeswitch">Include usb_modeswitch for some hardware (bug #601242)</flag>
</use>
</pkgmetadata>
diff --git a/net-print/epson-inkjet-printer-escpr/Manifest b/net-print/epson-inkjet-printer-escpr/Manifest
index 62365dfdd8dc..bff50d4e5265 100644
--- a/net-print/epson-inkjet-printer-escpr/Manifest
+++ b/net-print/epson-inkjet-printer-escpr/Manifest
@@ -1 +1,3 @@
-DIST epson-inkjet-printer-escpr-1.7.7-1lsb3.2.tar.gz 4767015 BLAKE2B a50be3f9975183c64a55225d81cb607ffbb018843aab682b077e7ab236e02b20d0d2aecbdb6fed58daab78d8d2382745f434d7dfec6098c2d8c111d2b4e4fabd SHA512 9663b9ed425fbe5d3f2b6f85f036cdbd230665919e2cc9d62a33ebae85a0068513417209dae97ce55e406124b92c96c455cdc204d3d2335f4215f57b79f9d2a9
+DIST epson-inkjet-printer-escpr-1.8.4-1.tar.gz 5595766 BLAKE2B 9baba92331d0f55a6831d23a7b9b2824b5f33392d41f6ef0e2c45a4df7b54503d16b14dccc5dcc0d9b163f2677ba473b502e605f2f9509a1fc8c6c3095bbe858 SHA512 548b0cc27ab91c19b1d4fad79e3c3cacfb821b7c3156d8f1f3aafd31b94405794a86ff8b6abf5e56fb6692a471d96b5665a006cdc748d8de83c2ebadb0f634bc
+DIST epson-inkjet-printer-escpr-1.8.5-1.tar.gz 5666905 BLAKE2B 549c948709993779b5615b501038fdceb6c3d6f173709b8cf99459346fff89923bdbe1babe34ee98eed4e1ebbd7a4b5962ddbc9cec9711aa15ff2056fec3d436 SHA512 4117b1efe903e4f506bbc67c45079f1d467ff6527691308734e55d32feeda3ec44b2dd85361e0243114f924eef04a91b0a5e86b5008f0a32ef323989b3d2896f
+DIST epson-inkjet-printer-escpr2-1.2.9-1.tar.gz 5367737 BLAKE2B 6868569a6bed622e2f50619a36ffb0a0f7e834fd8a794ae3bc906d971db26b0c86386c9545190ec384027d0b8e8f62ddda6cb24f1e3f60b9c535a1eeddff4332 SHA512 70ff744d42fac4c79d2994648763b0b3970ee5463a7a310a0721a63735d536cb9a0499c894289d946b30e6f564f9bf60aa61801580ab6635af211d50867921a1
diff --git a/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.2.9-r1.ebuild b/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.2.9-r1.ebuild
new file mode 100644
index 000000000000..ee7aecc88746
--- /dev/null
+++ b/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.2.9-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P="${PN}2-${PV}"
+
+DESCRIPTION="Epson Inkjet Printer Driver 2 (ESC/P-R) for Linux"
+HOMEPAGE="https://download.ebz.epson.net/dsc/search/01/search/?OSC=LX"
+SRC_URI="https://download3.ebz.epson.net/dsc/f/03/00/15/33/96/607198a4f064daa9e7931913eaf27f3a58125f2b/${MY_P}-1.tar.gz"
+S="${WORKDIR}/${MY_P}"
+LICENSE="EPSON LGPL-2.1+"
+SLOT="2"
+KEYWORDS="amd64"
+
+QA_FLAGS_IGNORED="/usr/lib64/libescpr2.so.1.0.0"
+
+DEPEND="net-print/cups"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-${SLOT}-gcc14.patch"
+)
+
+src_configure() {
+ econf \
+ --with-cupsfilterdir="${EPREFIX}/usr/libexec/cups/filter"
+ --with-cupsppddir="${EPREFIX}/usr/share/ppd"
+}
+
+src_install() {
+ default
+
+ find "${ED}/usr/lib64" -name "*.la" -delete \
+ || die "Removal of libtool files (.la) has failed."
+}
diff --git a/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.2.9.ebuild b/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.2.9.ebuild
new file mode 100644
index 000000000000..d66c18c52378
--- /dev/null
+++ b/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.2.9.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P="${PN}2-${PV}"
+
+DESCRIPTION="Epson Inkjet Printer Driver 2 (ESC/P-R) for Linux"
+HOMEPAGE="https://download.ebz.epson.net/dsc/search/01/search/?OSC=LX"
+SRC_URI="https://download3.ebz.epson.net/dsc/f/03/00/15/33/96/607198a4f064daa9e7931913eaf27f3a58125f2b/${MY_P}-1.tar.gz"
+S="${WORKDIR}/${MY_P}"
+LICENSE="EPSON LGPL-2.1+"
+SLOT="2"
+KEYWORDS="amd64"
+
+QA_FLAGS_IGNORED="/usr/lib64/libescpr2.so.1.0.0"
+
+DEPEND="net-print/cups"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ econf \
+ --with-cupsfilterdir="${EPREFIX}/usr/libexec/cups/filter"
+ --with-cupsppddir="${EPREFIX}/usr/share/ppd"
+}
+
+src_install() {
+ default
+
+ find "${ED}/usr/lib64" -name "*.la" -delete \
+ || die "Removal of libtool files (.la) has failed."
+}
diff --git a/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.7.7.ebuild b/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.8.4.ebuild
index 1e0db2c8f85a..64af8c42cefc 100644
--- a/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.7.7.ebuild
+++ b/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.8.4.ebuild
@@ -1,20 +1,27 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
DESCRIPTION="Epson Inkjet Printer Driver (ESC/P-R)"
HOMEPAGE="https://download.ebz.epson.net/dsc/search/01/search/?OSC=LX"
-SRC_URI="https://download3.ebz.epson.net/dsc/f/03/00/10/49/18/f3016be6120a7271a6d9cb64872f817bce1920b8/epson-inkjet-printer-escpr-${PV}-1lsb3.2.tar.gz"
+
+# https://support.epson.net/linux/Printer/LSB_distribution_pages/en/escpr.php
+# Use the "source package for arm CPU" to get a tarball instead of an srpm.
+SRC_URI="https://download3.ebz.epson.net/dsc/f/03/00/15/57/25/a928e7d08c825ef1cdb892e70318d986720cef8a/${P}-1.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 ~ppc64"
+KEYWORDS="amd64 ppc64"
DEPEND="net-print/cups"
RDEPEND="${DEPEND}"
-PATCHES=( "${FILESDIR}/1.6.5-warnings.patch" )
+PATCHES=(
+ "${FILESDIR}/1.6.5-warnings.patch"
+ "${FILESDIR}/${PN}-1.7.7-fnocommon.patch"
+ "${FILESDIR}/${PN}-1.8-missing-include.patch"
+)
src_configure() {
econf --disable-shared
diff --git a/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.8.5.ebuild b/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.8.5.ebuild
new file mode 100644
index 000000000000..ca70ea12d8a6
--- /dev/null
+++ b/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.8.5.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Epson Inkjet Printer Driver (ESC/P-R)"
+HOMEPAGE="https://download.ebz.epson.net/dsc/search/01/search/?OSC=LX"
+
+# https://support.epson.net/linux/Printer/LSB_distribution_pages/en/escpr.php
+# Use the "source package for arm CPU" to get a tarball instead of an srpm.
+SRC_URI="https://download3.ebz.epson.net/dsc/f/03/00/15/68/89/fbff579f15226ffcc4a16895bd6bce6842277802/${P}-1.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc64"
+
+DEPEND="net-print/cups"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/1.6.5-warnings.patch"
+ "${FILESDIR}/${PN}-1.7.7-fnocommon.patch"
+ "${FILESDIR}/${PN}-1.8-missing-include.patch"
+)
+
+src_configure() {
+ econf --disable-shared
+
+ # Makefile calls ls to generate a file list which is included in Makefile.am
+ # Set the collation to C to avoid automake being called automatically
+ unset LC_ALL
+ export LC_COLLATE=C
+}
+
+src_install() {
+ emake -C ppd DESTDIR="${D}" install
+ emake -C src DESTDIR="${D}" install
+ einstalldocs
+}
diff --git a/net-print/epson-inkjet-printer-escpr/files/epson-inkjet-printer-escpr-1.7.7-fnocommon.patch b/net-print/epson-inkjet-printer-escpr/files/epson-inkjet-printer-escpr-1.7.7-fnocommon.patch
new file mode 100644
index 000000000000..e2e35719ca8f
--- /dev/null
+++ b/net-print/epson-inkjet-printer-escpr/files/epson-inkjet-printer-escpr-1.7.7-fnocommon.patch
@@ -0,0 +1,11 @@
+--- a/src/filter.c 2020-05-23 13:50:19.064756474 +0200
++++ b/src/filter.c 2020-05-23 13:53:01.936647646 +0200
+@@ -68,7 +68,7 @@
+ extern EPS_UINT8* tmpLineBuf;
+
+ extern EPS_CMN_FUNC epsCmnFnc;
+-EPS_JOB_FUNCS jobFnc;
++extern EPS_JOB_FUNCS jobFnc;
+
+ extern EPS_INT32 tonerSave;
+ extern EPS_INT32 back_type;
diff --git a/net-print/epson-inkjet-printer-escpr/files/epson-inkjet-printer-escpr-1.8-missing-include.patch b/net-print/epson-inkjet-printer-escpr/files/epson-inkjet-printer-escpr-1.8-missing-include.patch
new file mode 100644
index 000000000000..4229d649bb26
--- /dev/null
+++ b/net-print/epson-inkjet-printer-escpr/files/epson-inkjet-printer-escpr-1.8-missing-include.patch
@@ -0,0 +1,129 @@
+--- /dev/null 2024-02-07 07:14:59.428332875 -0500
++++ b/lib/epson-escpage.h 2024-02-07 12:39:28.463235607 -0500
+@@ -0,0 +1,126 @@
++/*__________________________________ epson-escpage.h ________________________________*/
++
++/* 1 2 3 4 5 6 7 8 */
++/*34567890123456789012345678901234567890123456789012345678901234567890123456789012345678*/
++/*******************************************|********************************************/
++/*
++ * Copyright (c) 2010 Seiko Epson Corporation All rights reserved.
++ *
++ * Copyright protection claimed includes all forms and matters of
++ * copyrightable material and information now allowed by statutory or judicial
++ * law or hereinafter granted, including without limitation, material generated
++ * from the software programs which are displayed on the screen such as icons,
++ * screen display looks, etc.
++ *
++ */
++/*******************************************|********************************************/
++/* */
++/* Epson ESC/Page command Functions */
++/* */
++/*******************************************|********************************************/
++
++#ifndef __EPSON_ESCPAGE_H__
++#define __EPSON_ESCPAGE_H__
++#ifdef __cplusplus
++extern "C" {
++#endif
++/*------------------------------------ Includes -------------------------------------*/
++/*******************************************|********************************************/
++#include "epson-escpr-pvt.h"
++#include "epson-escpr-media.h"
++
++/*------------------------------- Global Compiler Switch -------------------------------*/
++/*******************************************|********************************************/
++#define EPS_PAGE_RIT (1)
++#define EPS_PAGE_TONER_SAVE (0)
++#define EPS_PAGE_OUTUNIT_FACEDOWN (1)
++#define EPS_PAGE_LOWRES_MODE (1) /* OFF=0 / ON=1 */
++#define EPS_PAGE_HT_ERR_DIFFUSION (1) /* Halftoning mode */
++
++/*----------------------------------- Definitions ------------------------------------*/
++/*******************************************|********************************************/
++#define dim(x) (sizeof(x) / sizeof(x[0]))
++#define EPS_EJL_LINEMAX (256)
++
++/*--------------------------- ESC/Page Media Declarations ---------------------------*/
++/*******************************************|********************************************/
++typedef struct _tagEPS_PAGE_MEDIASIZE_ {
++ EPS_INT32 id;
++ EPS_INT32 paper_x;
++ EPS_INT32 paper_y;
++ EPS_INT32 print_area_x_border;
++ EPS_INT32 print_area_y_border;
++ const EPS_INT8 *name;
++} EPS_PAGE_MEDIASIZE;
++
++/* Size 600dpi */
++static const EPS_PAGE_MEDIASIZE pageMediaSize[] = {
++ { EPS_MSID_A4, 4960, 7016, 4720, 6776, "A4" },
++ { EPS_MSID_A3, 7016, 9920, 6776, 9680, "A3" },
++ { EPS_MSID_B4, 6072, 8600, 5832, 8360, "B4" },
++ { EPS_MSID_B5, 4300, 6072, 4060, 5832, "B5" },
++ { EPS_MSID_LETTER, 5100, 6600, 4860, 6360, "LT" },
++ { EPS_MSID_LEGAL, 5100, 8400, 4860, 8160, "LGL"},
++ { EPS_MSID_POSTCARD,2362, 3496, 2122, 3256, "PC" }
++};
++
++/*--------------------------- Data Structure Declarations ---------------------------*/
++/*******************************************|********************************************/
++/* command data buffer */
++typedef struct tagEPS_COMMAND_BUFFER
++{
++ EPS_UINT32 size; /* allocated buffer size */
++ EPS_UINT32 len; /* data size */
++ EPS_INT8* p;
++ void* pExtent;
++} EPS_COMMAND_BUFFER;
++
++/*-------------------------- Public Function Declarations ---------------------------*/
++/*******************************************|********************************************/
++extern EPS_ERR_CODE pageInitJob (const EPS_JOB_ATTRIB *pJobAttr);
++extern EPS_ERR_CODE pageAllocBuffer (void);
++extern void pageRelaseBuffer (void);
++extern EPS_ERR_CODE pageStartJob (void);
++extern EPS_ERR_CODE pageEndJob (void);
++extern EPS_ERR_CODE pageStartPage (void);
++extern EPS_ERR_CODE pageEndPage (void);
++extern EPS_ERR_CODE pageColorRow (const EPS_BANDBMP*, EPS_RECT*);
++extern EPS_ERR_CODE pageSendLeftovers (void);
++
++ /*** Get Supported Media Function */
++ /*** -------------------------------------------------------------------------------*/
++extern EPS_ERR_CODE pageCreateMediaInfo (EPS_PRINTER_INN* printer, EPS_UINT8* pmString,
++ EPS_INT32 pmSize );
++extern void pageClearSupportedMedia (EPS_PRINTER_INN* printer );
++extern EPS_ERR_CODE pageGetPrintAreaInfoFromTable(const EPS_JOB_ATTRIB*,
++ EPS_UINT32*, EPS_UINT32*, EPS_LAYOUT_INFO*);
++extern EPS_ERR_CODE pageCreatePrintAreaInfoFromTable (EPS_UINT32,EPS_PRINT_AREA_INFO* );
++
++ /*** Get Printable Area */
++ /*** -------------------------------------------------------------------------------*/
++extern EPS_ERR_CODE pageGetPrintableArea (EPS_JOB_ATTRIB*, EPS_UINT32*, EPS_UINT32* );
++
++
++/*----------------------- ESC/Page Local Function Declarations ----------------------*/
++/*******************************************|********************************************/
++typedef EPS_ERR_CODE (*PAGE_CmdBuffGrow )(EPS_COMMAND_BUFFER *pCmdBuff, EPS_INT32 addSize);
++
++extern EPS_ERR_CODE ejlStart (EPS_COMMAND_BUFFER *pCmdBuff, PAGE_CmdBuffGrow pfncGrow);
++extern EPS_ERR_CODE ejlEnd (EPS_COMMAND_BUFFER *pCmdBuff, PAGE_CmdBuffGrow pfncGrow,
++ EPS_INT32 pageCount );
++extern EPS_ERR_CODE ejlPageEsc (EPS_COMMAND_BUFFER *pCmdBuff, PAGE_CmdBuffGrow pfncGrow);
++
++#ifdef __cplusplus
++}
++#endif
++
++#endif /* def __EPSON_ESCPAGE_H__ */
++
++/*__________________________________ epson-escpage.h ________________________________*/
++
++/*34567890123456789012345678901234567890123456789012345678901234567890123456789012345678*/
++/* 1 2 3 4 5 6 7 8 */
++/*******************************************|********************************************/
++/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%|%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
++/***** End of File *** End of File *** End of File *** End of File *** End of File ******/
++/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%|%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
diff --git a/net-print/epson-inkjet-printer-escpr/files/epson-inkjet-printer-escpr-2-gcc14.patch b/net-print/epson-inkjet-printer-escpr/files/epson-inkjet-printer-escpr-2-gcc14.patch
new file mode 100644
index 000000000000..d415384cfbf1
--- /dev/null
+++ b/net-print/epson-inkjet-printer-escpr/files/epson-inkjet-printer-escpr-2-gcc14.patch
@@ -0,0 +1,228 @@
+--- a/src/mem.c 2024-05-19 17:31:29.121223820 -0400
++++ b/src/mem.c 2024-05-19 17:31:43.985467218 -0400
+@@ -23,6 +23,7 @@
+
+ #include <stdlib.h>
+ #include "mem.h"
++#include "err.h"
+
+ void *
+ mem_malloc (unsigned int size, bool_t crit)
+--- /dev/null 2024-05-19 14:31:56.295999966 -0400
++++ b/src/epson-escpr-services.h 2024-05-19 17:40:16.646097437 -0400
+@@ -0,0 +1,194 @@
++/*_____________________________ epson-escpr-services.h ______________________________*/
++
++/* 1 2 3 4 5 6 7 8 */
++/*34567890123456789012345678901234567890123456789012345678901234567890123456789012345678*/
++/*******************************************|********************************************/
++/*
++ * Copyright (c) 2009 Seiko Epson Corporation All rights reserved.
++ *
++ * Copyright protection claimed includes all forms and matters of
++ * copyrightable material and information now allowed by statutory or judicial
++ * law or hereinafter granted, including without limitation, material generated
++ * from the software programs which are displayed on the screen such as icons,
++ * screen display looks, etc.
++ *
++ */
++/*******************************************|********************************************/
++/* */
++/* Epson ESC/PR Sevice Functions */
++/* */
++/*******************************************|********************************************/
++#ifndef __EPSON_ESCPR_SERVICES_H__
++#define __EPSON_ESCPR_SERVICES_H__
++#ifdef __cplusplus
++extern "C" {
++#endif
++
++/*------------------------------------ Includes -------------------------------------*/
++/*******************************************|********************************************/
++#include "epson-typedefs.h"
++#include "epson-escpr-pvt.h"
++
++/*------------------------------------- Data Types -------------------------------------*/
++/*******************************************|********************************************/
++
++/*-------------------------------------- Macros -------------------------------------*/
++/*******************************************|********************************************/
++
++/*----------------------------------- Definitions ------------------------------------*/
++/*******************************************|********************************************/
++ /*** Ink Cartridge Type */
++ /*** -------------------------------------------------------------------------------*/
++#define MI_CARTRIDGE_INDEP 0x00 /* Independent Cartridge */
++#define MI_CARTRIDGE_ONE 0x01 /* One Cartridge */
++
++ /*** Device States */
++ /*** -------------------------------------------------------------------------------*/
++#define EPS_ST_ERROR 0x01
++#define EPS_ST_SELF_PRINTING 0x02
++#define EPS_ST_BUSY 0x04
++#define EPS_ST_WAITING 0x08
++#define EPS_ST_IDLE 0x10
++/*#define EPS_ST_PAUSE 0x20*/ /* Not supported by 2006 Model */
++/*#define EPS_ST_INKDRYING 0x40*/ /* Not supported by 2006 Model */
++#define EPS_ST_CLEANING 0x80
++#define EPS_ST_FACTORY_SHIPMENT 0x100
++/*#define EPS_ST_MOTOR_DRIVE_OFF 0x200*/ /* Not supported by 2006 Model */
++#define EPS_ST_SHUTDOWN 0x400
++/*#define EPS_ST_WAITPAPERINIT 0x800*/ /* Not supported by 2006 Model */
++/*#define EPS_ST_INIT_PAPER 0x1000*/ /* Not supported by 2006 Model */
++
++ /*** Device Warnings */
++ /*** -------------------------------------------------------------------------------*/
++#define EPS_PRNWARN_NONE 0x00 /* No Warnings */
++#define EPS_PRNWARN_INKLOW (1 << 0) /* Ink Low */
++#define EPS_PRNWARN_DISABLE_CLEAN (1 << 1) /* disable cleaning */
++#define EPS_PRNWARN_COLOR_INKOUT (1 << 2) /* disable color print */
++
++
++ /*** Ink Error */
++ /*** -------------------------------------------------------------------------------*/
++#define EPS_INKERR_NONE 0
++
++#define EPS_INKERR_INKENDB -1
++#define EPS_INKERR_INKENDC -2
++#define EPS_INKERR_INKENDCY -3
++#define EPS_INKERR_INKENDMA -4
++#define EPS_INKERR_INKENDYL -5
++#define EPS_INKERR_INKENDLC -6
++#define EPS_INKERR_INKENDLM -7
++#define EPS_INKERR_INKENDLY -8
++#define EPS_INKERR_INKENDDY -9
++#define EPS_INKERR_INKENDB2 -10
++#define EPS_INKERR_INKENDRD -11
++#define EPS_INKERR_INKENDBL -12
++#define EPS_INKERR_INKENDMB -13
++#define EPS_INKERR_INKENDPB -14
++#define EPS_INKERR_INKENDGO -15
++#define EPS_INKERR_INKENDALL -16
++#define EPS_INKERR_INKENDBC -17
++
++#define EPS_INKERR_CEMPTYB -101
++#define EPS_INKERR_CEMPTYC -102
++#define EPS_INKERR_CEMPTYCY -103
++#define EPS_INKERR_CEMPTYMA -104
++#define EPS_INKERR_CEMPTYYL -105
++#define EPS_INKERR_CEMPTYLC -106
++#define EPS_INKERR_CEMPTYLM -107
++#define EPS_INKERR_CEMPTYLY -108
++#define EPS_INKERR_CEMPTYDY -109
++#define EPS_INKERR_CEMPTYB2 -110
++#define EPS_INKERR_CEMPTYRD -111
++#define EPS_INKERR_CEMPTYBL -112
++#define EPS_INKERR_CEMPTYMB -113
++#define EPS_INKERR_CEMPTYPB -114
++#define EPS_INKERR_CEMPTYGO -115
++#define EPS_INKERR_CEMPTYBC -116
++#define EPS_INKERR_CEMPTYALL -117
++
++#define EPS_INKERR_CFAILB -201
++#define EPS_INKERR_CFAILC -202
++#define EPS_INKERR_CFAILCY -203
++#define EPS_INKERR_CFAILMA -204
++#define EPS_INKERR_CFAILYL -205
++#define EPS_INKERR_CFAILLC -206
++#define EPS_INKERR_CFAILLM -207
++#define EPS_INKERR_CFAILLY -208
++#define EPS_INKERR_CFAILDY -209
++#define EPS_INKERR_CFAILB2 -210
++#define EPS_INKERR_CFAILRD -211
++#define EPS_INKERR_CFAILBL -212
++#define EPS_INKERR_CFAILMB -213
++#define EPS_INKERR_CFAILPB -214
++#define EPS_INKERR_CFAILGO -215
++#define EPS_INKERR_CFAILBC -216
++#define EPS_INKERR_CFAILALL -217
++
++ /*** Cancel request from printer */
++ /*** -------------------------------------------------------------------------------*/
++#define EPS_CAREQ_CANCEL -300
++#define EPS_CAREQ_NOCANCEL -301
++
++ /*** Other Printer Information */
++ /*** -------------------------------------------------------------------------------*/
++#define EPS_PREPARE_OVERHEAT -400
++#define EPS_PREPARE_NORMALHEAT -401
++#define EPS_PREPARE_TRAYOPENED -402
++#define EPS_PREPARE_TRAYCLOSED -403
++
++ /*** reset mode */
++ /*** -------------------------------------------------------------------------------*/
++#define EPS_PM_PAGE 1
++#define EPS_PM_JOB 2
++
++ /*** Misc */
++ /*** -------------------------------------------------------------------------------*/
++#define _SECOND_ 1000 /* Unit for changing milli second to second */
++#define _STATUS_REPLY_BUF 512 /* Printer status buffer size */
++
++
++ /*** Model depend */
++ /*** -------------------------------------------------------------------------------*/
++#define EPS_MDC_STATUS (1)
++#define EPS_MDC_NOZZLE (2)
++
++/*--------------------------- Public Function Declarations ---------------------------*/
++/*******************************************|********************************************/
++extern EPS_INT32 serParseDeviceID (EPS_INT8*, EPS_INT32, EPS_INT8*, EPS_INT8*,
++ EPS_INT32*, EPS_UINT32*, EPS_UINT32* );
++extern EPS_BOOL serCheckLang (EPS_INT8*, EPS_UINT32* );
++extern EPS_ERR_CODE serAnalyzeStatus (EPS_INT8*, EPS_UINT32, EPS_STATUS_INFO*);
++extern void serDelayThread (EPS_UINT32, EPS_CMN_FUNC* );
++extern EPS_INT32 serInkLevelNromalize (EPS_INT32 );
++extern EPS_ERR_CODE serGetSerialNo (EPS_INT8*, EPS_INT32, EPS_INT8* );
++extern EPS_ERR_CODE serGetSerialNoFormST (EPS_INT8*, EPS_INT8*, EPS_INT32 );
++extern EPS_ERR_CODE serGetSupplyInfo (EPS_UINT8*, EPS_SUPPLY_INFO* );
++
++#ifdef GCOMSW_EPSON_SLEEP
++extern EPS_ERR_CODE serSleep (EPS_UINT32 );
++#endif
++
++
++extern void obsSetPrinter (const EPS_PRINTER_INN* );
++extern void obsSetColorPlane (EPS_UINT8 );
++extern void obsClear (void );
++extern EPS_INT32 obsGetPageMode (void );
++extern EPS_BOOL obsIsA3Model (EPS_INT32 );
++extern EPS_BOOL obsEnableDuplex (EPS_INT32 );
++extern EPS_BOOL obsEnableAutoFeed (void );
++
++#ifdef __cplusplus
++}
++#endif
++
++#endif /* def __EPSON_ESCPR_SERVICES_H__ */
++
++
++/*_____________________________ epson-escpr-services.h _______________________________*/
++
++/*34567890123456789012345678901234567890123456789012345678901234567890123456789012345678*/
++/* 1 2 3 4 5 6 7 8 */
++/*******************************************|********************************************/
++/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%|%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
++/***** End of File *** End of File *** End of File *** End of File *** End of File ******/
++/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%|%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
+--- a/src/filter.c 2024-05-19 17:41:19.567178280 -0400
++++ b/src/filter.c 2024-05-19 17:46:15.780301782 -0400
+@@ -39,6 +39,7 @@
+ #include "epson-escpr-api.h"
+ #include "epson-escpr-services.h"
+ #include "epson-escpr-mem.h"
++#include "epson-escpr-services.h"
+
+ #include "err.h"
+ #include "mem.h"
+@@ -48,6 +49,10 @@
+ #include "optBase.h"
+ #include "linux_cmn.h"
+
++extern EPS_ERR_CODE SetupJobAttrib (const EPS_JOB_ATTRIB*);
++extern EPS_ERR_CODE SendStartJob ();
++extern EPS_ERR_CODE PrintBand (const EPS_UINT8*, EPS_UINT32, EPS_UINT32*);
++
+ #define WIDTH_BYTES(bits) (((bits) + 31) / 32 * 4)
+
+ #define PIPSLITE_FILTER_VERSION "* epson-escpr is a part of " PACKAGE_STRING
diff --git a/net-print/epson-inkjet-printer-escpr/metadata.xml b/net-print/epson-inkjet-printer-escpr/metadata.xml
index c6bc2d94015a..78e26bf47244 100644
--- a/net-print/epson-inkjet-printer-escpr/metadata.xml
+++ b/net-print/epson-inkjet-printer-escpr/metadata.xml
@@ -1,8 +1,47 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>asturm@gentoo.org</email>
- <name>Andreas Sturmlechner</name>
+ <email>mpagano@gentoo.org</email>
+ <name>Mike Pagano</name>
</maintainer>
+ <longdescription>
+ This software is a filter program used with Common UNIX Printing System
+ (CUPS) from the Linux. This can supply the high quality print with
+ Seiko Epson Color Ink Jet Printers.
+
+ This product supports only EPSON ESC/P-R printers. This package can be
+ used for all EPSON ESC/P-R printers.
+
+ For detail list of supported printer, please refer to below site:
+ http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX.
+ </longdescription>
+ <longdescription lang="fr">
+ Ce logiciel est un programme de filtres pour le « Common UNIX Printing
+ System » (CUPS) de Linux. Il peut fournir une impression de haute
+ qualité avec les imprimantes à jet d'encre couleur Seiko Epson (« Seiko
+ Epson Color Ink Jet Printers »).
+
+ Ce produit ne supporte que les imprimantes EPSON ESC/P-R. Ce paquet
+ peut être être utilisé pour toutes les imprimantes EPSON ESC/P-R.
+
+ Pour une liste détaillée des imprimantes supportées, veuillez vous
+ référer au site ci-dessous :
+ http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX.
+ </longdescription>
+ <slots>
+ <slot name="0">Epson Inkjet Printer Driver (ESC/P-R) for Linux</slot>
+ <slot name="2">Epson Inkjet Printer Driver 2 (ESC/P-R) for Linux</slot>
+ </slots>
+ <slots lang="fr">
+ <slot name="0">Epson Inkjet Printer Driver (ESC/P-R) pour Linux</slot>
+ <slot name="2">Epson Inkjet Printer Driver 2 (ESC/P-R) pour Linux</slot>
+ </slots>
+ <upstream>
+ <maintainer status="active">
+ <name>Seiko Epson Corporation</name>
+ <email>linux-printer@epson.jp</email>
+ </maintainer>
+ <doc>http://download.ebz.epson.net/man/linux/escpr2.html</doc>
+ </upstream>
</pkgmetadata>
diff --git a/net-print/fax4cups/fax4cups-1.29-r1.ebuild b/net-print/fax4cups/fax4cups-1.29-r1.ebuild
index fe10769ae330..37f2f9ce8f78 100644
--- a/net-print/fax4cups/fax4cups-1.29-r1.ebuild
+++ b/net-print/fax4cups/fax4cups-1.29-r1.ebuild
@@ -1,16 +1,16 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=8
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"
+S="${WORKDIR}/fax4CUPS-${PV}"
+LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ~ppc x86"
-
IUSE="+hylafax mgetty-fax efax"
REQUIRED_USE="|| ( hylafax mgetty-fax efax )"
@@ -23,27 +23,26 @@ RDEPEND="${DEPEND}
)
app-admin/sudo
"
-
-S=${WORKDIR}/fax4CUPS-${PV}
+BDEPEND="net-print/cups"
src_install() {
doman fax4CUPS.1
- exeinto $(cups-config --serverbin)/backend
+ exeinto $(cups-config --serverbin || die)/backend
insinto /usr/share/cups/model
+ local i
for i in hylafax efax mgetty-fax; do
- if use $i
- then
+ if use ${i}; then
# Backend
- doexe $i
+ doexe ${i}
# PPD
- doins $i.ppd
+ doins ${i}.ppd
fi
done
}
pkg_postinst() {
- elog "Please execute '/etc/init.d/cups restart'"
+ elog "Please execute '${EROOT}/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
index d1eaceb31e9c..7d4c6c8278ba 100644
--- a/net-print/fax4cups/metadata.xml
+++ b/net-print/fax4cups/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>printing@gentoo.org</email>
@@ -7,7 +7,7 @@
</maintainer>
<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>
+ <flag name="efax">Install <pkg>net-misc/efax</pkg> backend</flag>
+ <flag name="mgetty-fax">Install <pkg>net-dialup/mgetty</pkg> backend</flag>
</use>
</pkgmetadata>
diff --git a/net-print/foo2zjs/foo2zjs-20200221.ebuild b/net-print/foo2zjs/foo2zjs-20200221.ebuild
index a3a8fb5c6d12..6bfd213d2c6b 100644
--- a/net-print/foo2zjs/foo2zjs-20200221.ebuild
+++ b/net-print/foo2zjs/foo2zjs-20200221.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit toolchain-funcs eutils
+inherit toolchain-funcs
DESCRIPTION="Support for printing to ZjStream-based printers"
HOMEPAGE="http://foo2zjs.rkkda.com/"
@@ -24,7 +24,7 @@ DEPEND="${RDEPEND}
app-editors/vim
net-misc/wget
sys-apps/ed
- sys-devel/bc
+ app-alternatives/bc
test? ( sys-process/time )"
SRC_URI="https://dev.gentoo.org/~zerochaos/distfiles/${P}.tar.xz"
diff --git a/net-print/foo2zjs/foo2zjs-99999999.ebuild b/net-print/foo2zjs/foo2zjs-99999999.ebuild
index 630ce3d9e595..2a03dcc7030a 100644
--- a/net-print/foo2zjs/foo2zjs-99999999.ebuild
+++ b/net-print/foo2zjs/foo2zjs-99999999.ebuild
@@ -1,16 +1,16 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit toolchain-funcs eutils
+inherit toolchain-funcs
DESCRIPTION="Support for printing to ZjStream-based printers"
HOMEPAGE="http://foo2zjs.rkkda.com/"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS=""
+PROPERTIES="live"
IUSE="test"
RESTRICT="bindist !test? ( test )"
@@ -19,12 +19,12 @@ RDEPEND="net-print/cups
net-print/foomatic-db-engine
>=net-print/cups-filters-1.0.43-r1[foomatic]
virtual/udev"
-DEPEND="${RDEPEND}
- app-arch/unzip
+DEPEND="${RDEPEND}"
+BDEPEND="app-arch/unzip
app-editors/vim
net-misc/wget
sys-apps/ed
- sys-devel/bc
+ app-alternatives/bc
test? ( sys-process/time )"
S="${WORKDIR}/${PN}"
@@ -69,6 +69,11 @@ src_compile() {
MAKEOPTS=-j1 CC="$(tc-getCC)" default
}
+src_test() {
+ # see bug 419787
+ : ;
+}
+
src_install() {
# ppd files are installed automagically. We have to create a directory
# for them.
@@ -76,8 +81,3 @@ src_install() {
emake DESTDIR="${D}" -j1 install install-hotplug
}
-
-src_test() {
- # see bug 419787
- : ;
-}
diff --git a/net-print/foo2zjs/metadata.xml b/net-print/foo2zjs/metadata.xml
index c213922d0b14..e176fc04d714 100644
--- a/net-print/foo2zjs/metadata.xml
+++ b/net-print/foo2zjs/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>printing@gentoo.org</email>
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
index dbb53feb2a87..172f37fc42d3 100644
--- 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
@@ -1,5 +1,3 @@
-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@
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
index 9e6071276a4e..7a62faabc684 100644
--- 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
@@ -1,5 +1,5 @@
---- 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
+--- a/Makefile.in
++++ b/Makefile.in
@@ -231,10 +231,10 @@
( cd lib && $(PERL) Makefile.PL verbose INSTALLDIRS=$(PERL_INSTALLDIRS) )
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-r1.ebuild
index 0107432dbc51..ff3713e2c096 100644
--- 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-r1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=8
-inherit eutils perl-module versionator autotools
+inherit autotools perl-module
DESCRIPTION="Generates ppds out of xml foomatic printer description files"
HOMEPAGE="http://www.linuxprinting.org/foomatic.html"
@@ -11,53 +11,55 @@ 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 sparc x86"
-IUSE=""
+KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86"
-DEPEND="net-print/cups
+BDEPEND="
+ net-print/cups
virtual/pkgconfig"
RDEPEND="
dev-libs/libxml2
>=net-print/cups-filters-1.0.43-r1[foomatic]
"
+DEPEND="${RDEPEND}"
PDEPEND="net-print/foomatic-db"
src_prepare() {
- epatch \
+ default
+ eapply \
"${FILESDIR}"/4.0.7-perl-module.patch \
"${FILESDIR}"/4.0.7-respect-ldflag.patch \
"${FILESDIR}"/4.0.12-use-pkgconfig.patch
sed -i -e "s:@LIB_CUPS@:$(cups-config --serverbin):" Makefile.in || die
eautoreconf
- cd lib
+ cd lib || die
perl-module_src_prepare
}
src_configure() {
default
- emake defaults
- cd lib
+ cd lib || die
perl-module_src_configure
}
src_compile() {
+ emake defaults
default
- cd lib
+ cd lib || die
perl-module_src_compile
}
+src_test() {
+ cd lib || die
+ perl-module_src_test
+}
+
src_install() {
default
dodoc USAGE
- cd lib
+ cd lib || die
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
index 8223018128a3..882504794e17 100644
--- a/net-print/foomatic-db-engine/metadata.xml
+++ b/net-print/foomatic-db-engine/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>printing@gentoo.org</email>
diff --git a/net-print/foomatic-db-ppds/Manifest b/net-print/foomatic-db-ppds/Manifest
index 66e4b9927bc5..d654519ffdf7 100644
--- a/net-print/foomatic-db-ppds/Manifest
+++ b/net-print/foomatic-db-ppds/Manifest
@@ -1,3 +1 @@
-DIST foomatic-db-4.0-20170331.tar.gz 53321292 BLAKE2B 375421205b80cc84d10629454cad053ea0022c8e230c0eab0797f3de79d42e6cc3769ad286095aa7a5bdde0f49d30fb3484e8cbefbae48a32840c0ca96885276 SHA512 33037b087eccfe08fb5b2c0220992f4ad4762c7206325f6bc8073903aafa27a260382cfa8edb4500f0feeea4d0489a3a345fe3017790484fdfb53aa577f691c0
-DIST foomatic-db-4.0-20180126.tar.gz 58697641 BLAKE2B ae063e5d82e70dcd4b7791d0ffc3914c6a7d218c9e1067f6fe99f029c7f4340399e7034da26119e4219096758d029c832797dc10e8076f49f0e24ca11188785c SHA512 84e9c70e797a5328317d0b2725ebb67aa630923516fd8f860740af58ee5337b6302669c822b6aba32fb10ad9670c5894b34356e3cfc0e1496bd051551f40026d
DIST foomatic-db-4.0-20190226.tar.xz 6438248 BLAKE2B c5ce6b3ec5a29524f6f8c73fdaec88a97a3fd4521753c5058d470ebadf7c35c3218bd7e78023a26b267796ccfbca98368ee4d4bc5252b9339ee1c067adbe80b2 SHA512 308cf8b5648ae8f3be1a1a5af1885319ae9f263575e7b0b06bd66e6e3e0b495656124face65e285bfa657dbff3cff226bb00d78b873f16849b426641dc7d52fe
diff --git a/net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20170331.ebuild b/net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20170331.ebuild
deleted file mode 100644
index 1506c8f42957..000000000000
--- a/net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20170331.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-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 sparc x86"
-IUSE=""
-
-S="${WORKDIR}/${PN/-ppds}-$(get_version_component_range 3 ${PV})"
-
-src_prepare() {
- epatch "${FILESDIR}/Makefile.in-4.0.20120117.patch"
- rm db/source/PPD/Kyocera/ReadMe.htm || die # bug #559008
-}
-
-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.20180126.ebuild b/net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20180126.ebuild
deleted file mode 100644
index 725401eb0c11..000000000000
--- a/net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20180126.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-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 ~sparc ~x86"
-IUSE=""
-
-S="${WORKDIR}/${PN/-ppds}-$(get_version_component_range 3 ${PV})"
-
-src_prepare() {
- eapply "${FILESDIR}/Makefile.in-4.0.20120117.patch"
- rm db/source/PPD/Kyocera/ReadMe.htm || die # bug #559008
- default
-}
-
-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.20190226.ebuild b/net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20190226.ebuild
index 509ab6d4b681..aafc2714c037 100644
--- a/net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20190226.ebuild
+++ b/net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20190226.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
-inherit eutils versionator
+inherit versionator
MY_P=${PN/-ppds}-$(replace_version_separator 2 '-')
@@ -13,7 +13,7 @@ SRC_URI="http://linuxprinting.org/download/foomatic/${MY_P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86"
IUSE=""
S="${WORKDIR}/${PN/-ppds}-$(get_version_component_range 3 ${PV})"
diff --git a/net-print/foomatic-db-ppds/metadata.xml b/net-print/foomatic-db-ppds/metadata.xml
index 8223018128a3..07456818fddc 100644
--- a/net-print/foomatic-db-ppds/metadata.xml
+++ b/net-print/foomatic-db-ppds/metadata.xml
@@ -1,8 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>printing@gentoo.org</email>
<name>Gentoo Printing Project</name>
</maintainer>
+ <stabilize-allarches/>
</pkgmetadata>
diff --git a/net-print/foomatic-db/Manifest b/net-print/foomatic-db/Manifest
index 0200bd162cb8..d654519ffdf7 100644
--- a/net-print/foomatic-db/Manifest
+++ b/net-print/foomatic-db/Manifest
@@ -1,3 +1 @@
-DIST foomatic-db-4.0-20170331.tar.xz 5083832 BLAKE2B 3c22869cc50f9e68e04bc9edaf6227764ede1566bf93311f1098d0022174911697a63685488be2c753205e40284ec22c31a64e672fee3851eeec920730b5a344 SHA512 f265a476533a77c27f0eb6414a3b93c6b269effba7bb0d46c9d3965c0e7218c3b081ae5e3f01ebfe7afbec70379543dd2e553b97b338eca43c34c11a4ffb4dcc
-DIST foomatic-db-4.0-20180126.tar.xz 5418608 BLAKE2B e11dbfc7e4cf121ba8b456820438b0418981c414c6a798dee463430dd8ccf65b424e1d597bc21b32929e858d0282b12df81fb419793bd34172b0c414619d2762 SHA512 1879e2601ad88262c99201bff5353ac40516985de72dd894eeeae2589ae2b82dd4dbfc972cb3ff43f209efb92753d4ed0ce584d89cd242fedc011511c45d8a87
DIST foomatic-db-4.0-20190226.tar.xz 6438248 BLAKE2B c5ce6b3ec5a29524f6f8c73fdaec88a97a3fd4521753c5058d470ebadf7c35c3218bd7e78023a26b267796ccfbca98368ee4d4bc5252b9339ee1c067adbe80b2 SHA512 308cf8b5648ae8f3be1a1a5af1885319ae9f263575e7b0b06bd66e6e3e0b495656124face65e285bfa657dbff3cff226bb00d78b873f16849b426641dc7d52fe
diff --git a/net-print/foomatic-db/foomatic-db-4.0.20170331.ebuild b/net-print/foomatic-db/foomatic-db-4.0.20170331.ebuild
deleted file mode 100644
index a7945cd28e47..000000000000
--- a/net-print/foomatic-db/foomatic-db-4.0.20170331.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-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.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86"
-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.20180126.ebuild b/net-print/foomatic-db/foomatic-db-4.0.20180126.ebuild
deleted file mode 100644
index dc60de17c674..000000000000
--- a/net-print/foomatic-db/foomatic-db-4.0.20180126.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-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.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
-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
- default
-}
-
-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.20190226.ebuild b/net-print/foomatic-db/foomatic-db-4.0.20190226.ebuild
index dc60de17c674..b559732c3d5b 100644
--- a/net-print/foomatic-db/foomatic-db-4.0.20190226.ebuild
+++ b/net-print/foomatic-db/foomatic-db-4.0.20190226.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -11,7 +11,7 @@ SRC_URI="http://www.openprinting.org/download/foomatic/${PN}-$(replace_version_s
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86"
IUSE=""
DEPEND=""
diff --git a/net-print/foomatic-db/metadata.xml b/net-print/foomatic-db/metadata.xml
index 8223018128a3..07456818fddc 100644
--- a/net-print/foomatic-db/metadata.xml
+++ b/net-print/foomatic-db/metadata.xml
@@ -1,8 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>printing@gentoo.org</email>
<name>Gentoo Printing Project</name>
</maintainer>
+ <stabilize-allarches/>
</pkgmetadata>
diff --git a/net-print/gtklp/gtklp-1.3.1.ebuild b/net-print/gtklp/gtklp-1.3.1.ebuild
index b1eb8322df2e..7cdc9edcd84d 100644
--- a/net-print/gtklp/gtklp-1.3.1.ebuild
+++ b/net-print/gtklp/gtklp-1.3.1.ebuild
@@ -1,28 +1,27 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-inherit autotools eutils
+inherit autotools desktop flag-o-matic
DESCRIPTION="A GUI for cupsd"
HOMEPAGE="https://gtklp.sirtobi.com/"
-SRC_URI="mirror://sourceforge/gtklp/${P}.src.tar.gz
- mirror://sourceforge/gtklp/logo.xpm.gz -> gtklp-logo.xpm.gz"
+SRC_URI="https://downloads.sourceforge.net/gtklp/${P}.src.tar.gz
+ https://downloads.sourceforge.net/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
+RDEPEND="
net-print/cups
+ x11-libs/gtk+:2
nls? ( sys-devel/gettext )
ssl? ( dev-libs/openssl:0= )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-DOCS="AUTHORS BUGS ChangeLog README TODO USAGE"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
PATCHES=( "${FILESDIR}/${P}-formatsec.patch" )
@@ -35,6 +34,7 @@ src_prepare() {
}
src_configure() {
+ append-cflags -fcommon
econf \
$(use_enable nls) \
$(use_enable ssl) \
@@ -44,6 +44,7 @@ src_configure() {
src_install() {
default
+ dodoc USAGE
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
index 1292b2b35870..af00374fc38f 100644
--- a/net-print/gtklp/metadata.xml
+++ b/net-print/gtklp/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>printing@gentoo.org</email>
@@ -10,7 +10,7 @@
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>
+ </longdescription>
<upstream>
<remote-id type="sourceforge">gtklp</remote-id>
</upstream>
diff --git a/net-print/gutenprint/Manifest b/net-print/gutenprint/Manifest
index 88c4bc616699..8bcf70b934f2 100644
--- a/net-print/gutenprint/Manifest
+++ b/net-print/gutenprint/Manifest
@@ -1 +1 @@
-DIST gutenprint-5.3.3.tar.xz 5050624 BLAKE2B dbcf74169d0756d991bbdad7338a6e6f995f8eeedc2610677b327abee6aecc787d1cc35949f73c1d93ad274de7d467542b72a5fe0abf58fbc4ec6f21667cbad7 SHA512 d2c47eb4ccc3c46ccb2f1042682edf7443f5c57439ead72f49ecd10537cf967251bacf7ca7da29fb8dceecc7eebd55ed021f2594ff9fb6509bab543fab1dc8d6
+DIST gutenprint-5.3.4.tar.xz 5341824 BLAKE2B 134e59c7dbf9c0ba95b91c717f1e6841f35520b55105feb1ba40b82785c825b8e2a2429990e78186a1455e5c6de9880f911438d514c53c56d05575dd4e2d68a4 SHA512 63de0b62edbe255a7efaaeab1dcd22577b7b46d7e0e48441b79977f19e76bf3862e4e8e18c55dd1f2e7392d555f9e8ee875ea53b90c689852d2343491a8fbcc8
diff --git a/net-print/gutenprint/gutenprint-5.3.3.ebuild b/net-print/gutenprint/gutenprint-5.3.4-r2.ebuild
index 9c31813e9e53..dfd4b5b50189 100644
--- a/net-print/gutenprint/gutenprint-5.3.3.ebuild
+++ b/net-print/gutenprint/gutenprint-5.3.4-r2.ebuild
@@ -1,7 +1,8 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
+
inherit autotools
DESCRIPTION="Ghostscript and cups printer drivers"
@@ -9,38 +10,43 @@ HOMEPAGE="http://gutenprint.sourceforge.net"
MY_P="${P/_/-}"
S="${WORKDIR}/${MY_P}"
-SRC_URI="mirror://sourceforge/gimp-print/${MY_P}.tar.xz"
+SRC_URI="https://downloads.sourceforge.net/gimp-print/${MY_P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ~ia64 ppc ppc64 sparc x86"
+KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ppc ppc64 sparc x86"
IUSE="cups gimp gtk nls readline ppds static-libs"
+RESTRICT="test"
REQUIRED_USE="gimp? ( gtk )"
BDEPEND="
virtual/pkgconfig
nls? ( sys-devel/gettext )
"
+
# gimp restriction: https://sourceforge.net/p/gimp-print/bugs/725/
-CDEPEND="
+RDEPEND="
dev-lang/perl
- readline? ( sys-libs/readline:0= )
cups? ( >=net-print/cups-1.1.14 )
- gimp? ( <media-gfx/gimp-9999:2 x11-libs/gtk+:2 )
+ gimp? (
+ media-gfx/gimp:0/2
+ x11-libs/gtk+:2
+ )
gtk? ( x11-libs/gtk+:2 )
- nls? ( virtual/libintl )
+ readline? ( sys-libs/readline:0= )
"
-RDEPEND="${CDEPEND}"
-DEPEND="${CDEPEND}"
-
-RESTRICT="test"
+DEPEND="${RDEPEND}"
DOCS=( AUTHORS ChangeLog NEWS README doc/gutenprint-users-manual.{pdf,odt} )
+PATCHES=( "${FILESDIR}"/${PN}-5.3.1-cflags.patch )
-PATCHES=(
- "${FILESDIR}"/${PN}-5.3.1-cflags.patch
-)
+src_prepare() {
+ default
+
+ # Needed for cflags patch
+ eautoreconf
+}
src_configure() {
local myeconfargs=(
@@ -71,11 +77,11 @@ src_install() {
dodoc -r doc/gutenprintui2/html
rm -r "${ED}"/usr/share/gutenprint/doc || die
- find "${ED}" -name '*.la' -exec rm -f '{}' + || die
+ find "${ED}" -name '*.la' -delete || die
}
pkg_postinst() {
- if [[ ${ROOT} == / ]] && [[ -x /usr/sbin/cups-genppdupdate ]]; then
+ if [[ -x /usr/sbin/cups-genppdupdate ]]; then
elog "Updating installed printer ppd files"
elog $(/usr/sbin/cups-genppdupdate)
else
diff --git a/net-print/gutenprint/metadata.xml b/net-print/gutenprint/metadata.xml
index 763f98878c92..a9a8d007b78d 100644
--- a/net-print/gutenprint/metadata.xml
+++ b/net-print/gutenprint/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>printing@gentoo.org</email>
diff --git a/net-print/hplip-plugin/Manifest b/net-print/hplip-plugin/Manifest
index 836977931cf2..5f013fea62b8 100644
--- a/net-print/hplip-plugin/Manifest
+++ b/net-print/hplip-plugin/Manifest
@@ -1,2 +1 @@
-DIST hplip-3.19.12-plugin.run 11512079 BLAKE2B 534cbba51b2254f8227611b8f0449e100361fb445400f664e43e30412be8eb554bb35c2fe260d45cd5ad742b083af6d551532a9d14585029b0ff93675fab578a SHA512 ac2022d555f5084d5bf1e4519ddbb29828e9ca385aa6dff818ae9e79b60b4b2745e31ad4146cb01bca3747fae0d61b96e4a823b81179d2e2c55a643831165e4b
-DIST hplip-3.20.2-plugin.run 11517273 BLAKE2B 2e1a4829fad70c575ee86b02b80057cf5e3bd7d6ef2e5d76a532290b699ec908ef57e568938607ce8ee7ff8150aa4096ce6425023ce671150b7fac69310ec82b SHA512 632e9d5a0381b568fb1766df493134b9d8c53c13bd5da1e7e06fdf8369d8f30205378e64fec3372104b44ce6ed6a5e9c1f587914f0ad6454a750d07d384e5d28
+DIST hplip-3.23.12-plugin.run 11491524 BLAKE2B 9b87522a78588d65815992a170451888b4c6ac83809498fae01cfa4d2c333657a7cf49f2358e12ebfd0ae0f4169e29729e9ef8ba6716f74de0a83b11552275e3 SHA512 933c27040443584e0cfda71b50b8a251ebd34fdf4a2c90f40e36d1c155b3ae87c1474835356f685de2997469b4b7a3f000e216fd427118eea2542fa142783ab9
diff --git a/net-print/hplip-plugin/hplip-plugin-3.19.12.ebuild b/net-print/hplip-plugin/hplip-plugin-3.19.12.ebuild
deleted file mode 100644
index 315136510139..000000000000
--- a/net-print/hplip-plugin/hplip-plugin-3.19.12.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit unpacker
-
-DESCRIPTION="Proprietary plugins and firmware for HPLIP"
-HOMEPAGE="https://developers.hp.com/hp-linux-imaging-and-printing/plugins"
-SRC_URI="https://developers.hp.com/sites/default/files/hplip-${PV}-plugin.run"
-LICENSE="hplip-plugin"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-RDEPEND="
- ~net-print/hplip-${PV}
- virtual/libusb:0
- virtual/udev
-"
-DEPEND=""
-
-S=${WORKDIR}
-
-HPLIP_HOME=/usr/share/hplip
-
-# Binary prebuilt package
-QA_PRESTRIPPED="
- /usr/share/hplip/fax/plugins/fax_marvell.so
- /usr/share/hplip/prnt/plugins/hbpl1.so
- /usr/share/hplip/prnt/plugins/lj.so
- /usr/share/hplip/scan/plugins/bb_escl.so
- /usr/share/hplip/scan/plugins/bb_marvell.so
- /usr/share/hplip/scan/plugins/bb_soapht.so
- /usr/share/hplip/scan/plugins/bb_soap.so
-"
-
-# License does not allow us to redistribute the "source" package
-RESTRICT="mirror"
-
-src_install() {
- local hplip_arch
- case "${ARCH}" in
- amd64) hplip_arch="x86_64" ;;
- arm) hplip_arch="arm32" ;;
- x86) hplip_arch="x86_32" ;;
- *) die "Unsupported architecture." ;;
- esac
-
- insinto "${HPLIP_HOME}"/data/firmware
- doins *.fw.gz
-
- for plugin in *-${hplip_arch}.so; do
- local plugin_type=prnt
- case "${plugin}" in
- fax_*) plugin_type=fax ;;
- bb_*) plugin_type=scan ;;
- esac
-
- exeinto "${HPLIP_HOME}"/${plugin_type}/plugins
- newexe ${plugin} ${plugin/-${hplip_arch}}
- done
-
- insinto /var/lib/hp
- newins - hplip.state <<-_EOF_
- [plugin]
- installed = 1
- eula = 1
- version = ${PV}
- _EOF_
-}
diff --git a/net-print/hplip-plugin/hplip-plugin-3.20.2.ebuild b/net-print/hplip-plugin/hplip-plugin-3.23.12.ebuild
index 315136510139..2574deffcb94 100644
--- a/net-print/hplip-plugin/hplip-plugin-3.20.2.ebuild
+++ b/net-print/hplip-plugin/hplip-plugin-3.23.12.ebuild
@@ -1,48 +1,43 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit unpacker
DESCRIPTION="Proprietary plugins and firmware for HPLIP"
HOMEPAGE="https://developers.hp.com/hp-linux-imaging-and-printing/plugins"
SRC_URI="https://developers.hp.com/sites/default/files/hplip-${PV}-plugin.run"
+S="${WORKDIR}"
+
LICENSE="hplip-plugin"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
+KEYWORDS="amd64 arm arm64 x86"
+IUSE="orblite"
+# License does not allow us to redistribute the "source" package
+RESTRICT="mirror"
RDEPEND="
~net-print/hplip-${PV}
- virtual/libusb:0
virtual/udev
+ orblite? (
+ media-gfx/sane-backends
+ >=sys-libs/glibc-2.26
+ virtual/libusb:0
+ )
"
-DEPEND=""
-
-S=${WORKDIR}
HPLIP_HOME=/usr/share/hplip
# Binary prebuilt package
-QA_PRESTRIPPED="
- /usr/share/hplip/fax/plugins/fax_marvell.so
- /usr/share/hplip/prnt/plugins/hbpl1.so
- /usr/share/hplip/prnt/plugins/lj.so
- /usr/share/hplip/scan/plugins/bb_escl.so
- /usr/share/hplip/scan/plugins/bb_marvell.so
- /usr/share/hplip/scan/plugins/bb_soapht.so
- /usr/share/hplip/scan/plugins/bb_soap.so
-"
-
-# License does not allow us to redistribute the "source" package
-RESTRICT="mirror"
+QA_PREBUILT="${HPLIP_HOME}/*.so"
src_install() {
- local hplip_arch
+ local hplip_arch plugin
case "${ARCH}" in
amd64) hplip_arch="x86_64" ;;
arm) hplip_arch="arm32" ;;
+ arm64) hplip_arch="arm64" ;;
x86) hplip_arch="x86_32" ;;
*) die "Unsupported architecture." ;;
esac
@@ -53,8 +48,13 @@ src_install() {
for plugin in *-${hplip_arch}.so; do
local plugin_type=prnt
case "${plugin}" in
- fax_*) plugin_type=fax ;;
- bb_*) plugin_type=scan ;;
+ bb_orblite-*)
+ use orblite || continue
+ plugin_type=scan ;;
+ bb_*)
+ plugin_type=scan ;;
+ fax_*)
+ plugin_type=fax ;;
esac
exeinto "${HPLIP_HOME}"/${plugin_type}/plugins
diff --git a/net-print/hplip-plugin/metadata.xml b/net-print/hplip-plugin/metadata.xml
index aa914daf8cfb..8e577f12bf50 100644
--- a/net-print/hplip-plugin/metadata.xml
+++ b/net-print/hplip-plugin/metadata.xml
@@ -1,11 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>printing@gentoo.org</email>
<name>Gentoo Printing Project</name>
</maintainer>
+ <maintainer type="person">
+ <email>chewi@gentoo.org</email>
+ <name>James Le Cuirot</name>
+ </maintainer>
<upstream>
<remote-id type="sourceforge">hplip</remote-id>
</upstream>
+ <use>
+ <flag name="orblite">Install the ORBlite scanner plugin</flag>
+ </use>
</pkgmetadata>
diff --git a/net-print/hplip/Manifest b/net-print/hplip/Manifest
index 90796714a198..d7ed9f2773b8 100644
--- a/net-print/hplip/Manifest
+++ b/net-print/hplip/Manifest
@@ -1,3 +1,2 @@
-DIST hplip-3.18.12-patches-1.tar.xz 12032 BLAKE2B 33e6e4e1e0e5b4f998459073cf0742b7c56929b23e6c1cc3ba9df4eafb8007273a5a2e7f27af0d2d4a3a97ebb9cfe462b74dcddd7149088980893b2c66113b7c SHA512 3b0e2b4f7d8da257c6fcf12f2e049276d059426f2d1c626324982ce862efa2323cbb191a373c53fea7880e3b6e44ec62e584091676556d97e6a456edea4c44cf
-DIST hplip-3.19.12.tar.gz 25676247 BLAKE2B 1373aa70a2307071c28a22b0ae85e242c3e6bec614ef7490c1ecc0e5e745b81b6c2097948fbd062b5e72e10714cdc8d6f9145aacafc0fedeafde375909cb2cb6 SHA512 5552cd717ae082ee55cdb77d79e8d035d8ecb7cf23c79d659fda43468d8ed414a33c4d869eab4ab83dee836f0d1cceb74c3c4a249e26f904a5ab2350e08a5677
-DIST hplip-3.20.2.tar.gz 25675649 BLAKE2B 8e98768736fe4ec667852fccebf2bb178047eedb1d92b995d3107ea4c8ba618caa24204c48069b06333a2797dabdf14e1d7d066f5aca77e2c88a85c7080223e6 SHA512 9343eca569c8367e8207708a76351c0f97472500d07f26b62867b4001d504f24b2d2ecfe431e8019623477e7e5d55623d5d91848b4aba71c3e88c8302ed51b4c
+DIST hplip-3.23.12-patches-1.tar.xz 21132 BLAKE2B 83cee13ef988618cf6537b3954649c733b3de99f4d1c2ffefe9aeaba8f21e61a92dfa2e4cdb87af3d4b56df244e7de1b1d6bf73d878aa8ccabe60c537e05916f SHA512 89a0139660b013c11ba1dfa6adf1840b8ccc5b49bc31580481967c85e75ca79aba537bc4b65834ee464013b7aa0544267235d14dc877cb5276cb6e89c6a3fafa
+DIST hplip-3.23.12.tar.gz 30162044 BLAKE2B 752a5b75855677e4f8b5b8738181d40c426268be4e393e5df7565c78efca68389e86d92f21002a733c0b2d5d62913bef3986e4bedd36a9f35f205c11e6027e7a SHA512 7461ffec38be68421e4204021f53d2b1641e7a67c14f205390d45f487a1af90956fd221f7e1561635508103ae944f19e04d6052d3f8928f2c9685fdcdcf515df
diff --git a/net-print/hplip/hplip-3.19.12-r1.ebuild b/net-print/hplip/hplip-3.19.12-r1.ebuild
deleted file mode 100644
index 11c11535587e..000000000000
--- a/net-print/hplip/hplip-3.19.12-r1.ebuild
+++ /dev/null
@@ -1,276 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7} )
-PYTHON_REQ_USE="threads(+),xml"
-
-# 14 and 15 spit out a lot of warnings about subdirs
-WANT_AUTOMAKE="1.13"
-
-inherit autotools linux-info python-single-r1 readme.gentoo-r1 udev
-
-DESCRIPTION="HP Linux Imaging and Printing - Print, scan, fax drivers and service tools"
-HOMEPAGE="https://developers.hp.com/hp-linux-imaging-and-printing"
-SRC_URI="mirror://sourceforge/hplip/${P}.tar.gz
- https://dev.gentoo.org/~billie/distfiles/${PN}-3.18.12-patches-1.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 arm ppc ppc64 x86"
-
-IUSE="doc fax +hpcups hpijs kde libnotify libressl -libusb0 minimal parport policykit qt5 scanner +snmp static-ppds X"
-
-COMMON_DEPEND="
- net-print/cups
- virtual/jpeg:0
- hpijs? ( net-print/cups-filters[foomatic] )
- !minimal? (
- ${PYTHON_DEPS}
- sys-apps/dbus
- !libusb0? ( virtual/libusb:1 )
- libusb0? ( virtual/libusb:0 )
- scanner? ( media-gfx/sane-backends )
- snmp? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:= )
- net-analyzer/net-snmp
- )
- )
-"
-BDEPEND="
- virtual/pkgconfig
-"
-DEPEND="
- ${COMMON_DEPEND}
-"
-RDEPEND="
- ${COMMON_DEPEND}
- app-text/ghostscript-gpl
- !minimal? (
- $(python_gen_cond_dep 'dev-python/pygobject:2[${PYTHON_MULTI_USEDEP}]' 'python2*')
- $(python_gen_cond_dep 'dev-python/pygobject:3[${PYTHON_MULTI_USEDEP}]' 'python3*')
- kernel_linux? ( virtual/udev )
- $(python_gen_cond_dep '
- >=dev-python/dbus-python-1.2.0-r1[${PYTHON_MULTI_USEDEP}]
- fax? ( dev-python/reportlab[${PYTHON_MULTI_USEDEP}] )
- qt5? (
- >=dev-python/PyQt5-5.5.1[dbus,gui,widgets,${PYTHON_MULTI_USEDEP}]
- libnotify? ( dev-python/notify2[${PYTHON_MULTI_USEDEP}] )
- )
- scanner? (
- >=dev-python/reportlab-3.2[${PYTHON_MULTI_USEDEP}]
- >=dev-python/pillow-3.1.1[${PYTHON_MULTI_USEDEP}]
- X? (
- || (
- kde? ( kde-misc/skanlite )
- media-gfx/xsane
- media-gfx/sane-frontends
- )
- )
- )
- ')
- )
- policykit? ( sys-auth/polkit )
-"
-
-REQUIRED_USE="!minimal? ( ${PYTHON_REQUIRED_USE} )"
-
-PATCHES=(
- "${WORKDIR}/patches"
-)
-
-CONFIG_CHECK="~PARPORT ~PPDEV"
-ERROR_PARPORT="Please make sure kernel parallel port support is enabled (PARPORT and PPDEV)."
-
-#DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-For more information on setting up your printer please take
-a look at the hplip section of the gentoo printing guide:
-https://wiki.gentoo.org/wiki/Printing
-
-Any user who wants to print must be in the lp group.
-"
-
-pkg_setup() {
- use !minimal && python-single-r1_pkg_setup
-
- 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() {
- default
-
- if use !minimal ; then
- python_export EPYTHON PYTHON
- python_fix_shebang .
- fi
-
- # 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
-
- eautoreconf
-}
-
-src_configure() {
- local myconf drv_build minimal_build
-
- 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
-
- # disable class driver for now
- econf \
- --disable-cups11-build \
- --disable-lite-build \
- --disable-foomatic-rip-hplip-install \
- --disable-shadow-build \
- --disable-qt3 \
- --disable-qt4 \
- --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} \
- --enable-hpps-install \
- --disable-class-driver \
- $(use_enable doc doc-build) \
- $(use_enable fax fax-build) \
- $(use_enable !minimal gui-build) \
- $(use_enable !minimal dbus-build) \
- $(use_enable parport pp-build) \
- $(use_enable policykit) \
- $(use_enable qt5) \
- $(use_enable scanner scan-build) \
- $(use_enable snmp network-build)
-
- # hpijs ppds are created at configure time but are not installed (3.17.11)
-
- # 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
-}
-
-src_install() {
- # Disable parallel install
- # Gentoo Bug: https://bugs.gentoo.org/show_bug.cgi?id=578018
- emake -j1 DESTDIR="${D}" install
- einstalldocs
- # default
-
- # Installed by sane-backends
- # Gentoo Bug: https://bugs.gentoo.org/show_bug.cgi?id=201023
- rm -f "${ED}"/etc/sane.d/dll.conf || die
-
- # Remove desktop and autostart files
- # Gentoo Bug: https://bugs.gentoo.org/show_bug.cgi?id=638770
- use qt5 || {
- rm -Rf "${ED}"/usr/share/applications "${ED}"/etc/xdg
- }
-
- rm -f "${ED}"/usr/share/doc/${PF}/{copyright,README_LIBJPG,COPYING} || die
- rmdir --ignore-fail-on-non-empty "${ED}"/usr/share/doc/${PF}/ || die
-
- # Remove hal fdi files
- rm -rf "${ED}"/usr/share/hal || die
-
- find "${D}" -name '*.la' -delete || die
-
- if use !minimal ; then
- python_export EPYTHON PYTHON
- python_optimize "${ED}"/usr/share/hplip
- fi
-
- readme.gentoo_create_doc
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-}
diff --git a/net-print/hplip/hplip-3.20.2.ebuild b/net-print/hplip/hplip-3.23.12-r1.ebuild
index 49cad9be3506..24eb1e8fa894 100644
--- a/net-print/hplip/hplip-3.20.2.ebuild
+++ b/net-print/hplip/hplip-3.23.12-r1.ebuild
@@ -1,41 +1,40 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{6,7} )
-PYTHON_REQ_USE="threads(+),xml"
+PYTHON_COMPAT=( python3_{10,11} )
+PYTHON_REQ_USE="threads(+),xml(+)"
-# 14 and 15 spit out a lot of warnings about subdirs
-WANT_AUTOMAKE="1.13"
-
-inherit autotools linux-info python-single-r1 readme.gentoo-r1 udev
+inherit autotools flag-o-matic linux-info python-single-r1 readme.gentoo-r1 udev
DESCRIPTION="HP Linux Imaging and Printing - Print, scan, fax drivers and service tools"
HOMEPAGE="https://developers.hp.com/hp-linux-imaging-and-printing"
-SRC_URI="mirror://sourceforge/hplip/${P}.tar.gz
- https://dev.gentoo.org/~billie/distfiles/${PN}-3.18.12-patches-1.tar.xz"
+SRC_URI="https://downloads.sourceforge.net/project/${PN}/${PN}/${PV}/${P}.tar.gz
+ https://dev.gentoo.org/~billie/distfiles/${PN}-3.23.12-patches-1.tar.xz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+KEYWORDS="amd64 arm arm64 ppc ppc64 x86"
-IUSE="doc fax +hpcups hpijs kde libnotify libressl -libusb0 minimal parport policykit qt5 scanner +snmp static-ppds X"
+IUSE="doc fax +hpcups hpijs kde libnotify libusb0 minimal parport policykit qt5 scanner +snmp static-ppds X"
COMMON_DEPEND="
net-print/cups
- virtual/jpeg:0
+ media-libs/libjpeg-turbo:0
hpijs? ( net-print/cups-filters[foomatic] )
+ !libusb0? ( virtual/libusb:1 )
+ libusb0? ( virtual/libusb:0 )
+ ${PYTHON_DEPS}
!minimal? (
- ${PYTHON_DEPS}
sys-apps/dbus
- !libusb0? ( virtual/libusb:1 )
- libusb0? ( virtual/libusb:0 )
- scanner? ( media-gfx/sane-backends )
+ scanner? (
+ media-gfx/sane-backends
+ )
snmp? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:= )
- net-analyzer/net-snmp
+ dev-libs/openssl:0=
+ net-analyzer/net-snmp:=[${PYTHON_SINGLE_USEDEP}]
+ net-dns/avahi[dbus,python,${PYTHON_SINGLE_USEDEP}]
)
)
"
@@ -49,19 +48,19 @@ RDEPEND="
${COMMON_DEPEND}
app-text/ghostscript-gpl
!minimal? (
- $(python_gen_cond_dep 'dev-python/pygobject:2[${PYTHON_MULTI_USEDEP}]' 'python2*')
- $(python_gen_cond_dep 'dev-python/pygobject:3[${PYTHON_MULTI_USEDEP}]' 'python3*')
+ $(python_gen_cond_dep 'dev-python/pygobject:3[${PYTHON_USEDEP}]' 'python3*')
kernel_linux? ( virtual/udev )
$(python_gen_cond_dep '
- >=dev-python/dbus-python-1.2.0-r1[${PYTHON_MULTI_USEDEP}]
- fax? ( dev-python/reportlab[${PYTHON_MULTI_USEDEP}] )
+ >=dev-python/dbus-python-1.2.0-r1[${PYTHON_USEDEP}]
+ dev-python/distro[${PYTHON_USEDEP}]
+ fax? ( dev-python/reportlab[${PYTHON_USEDEP}] )
qt5? (
- >=dev-python/PyQt5-5.5.1[dbus,gui,widgets,${PYTHON_MULTI_USEDEP}]
- libnotify? ( dev-python/notify2[${PYTHON_MULTI_USEDEP}] )
+ >=dev-python/PyQt5-5.5.1[dbus,gui,widgets,${PYTHON_USEDEP}]
+ libnotify? ( dev-python/notify2[${PYTHON_USEDEP}] )
)
scanner? (
- >=dev-python/reportlab-3.2[${PYTHON_MULTI_USEDEP}]
- >=dev-python/pillow-3.1.1[${PYTHON_MULTI_USEDEP}]
+ >=dev-python/reportlab-3.2[${PYTHON_USEDEP}]
+ >=dev-python/pillow-3.1.1[${PYTHON_USEDEP}]
X? (
|| (
kde? ( kde-misc/skanlite )
@@ -75,7 +74,7 @@ RDEPEND="
policykit? ( sys-auth/polkit )
"
-REQUIRED_USE="!minimal? ( ${PYTHON_REQUIRED_USE} )"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
PATCHES=(
"${WORKDIR}/patches"
@@ -89,37 +88,33 @@ DOC_CONTENTS="
For more information on setting up your printer please take
a look at the hplip section of the gentoo printing guide:
https://wiki.gentoo.org/wiki/Printing
-
-Any user who wants to print must be in the lp group.
"
pkg_setup() {
- use !minimal && python-single-r1_pkg_setup
+ python-single-r1_pkg_setup
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
+ use parport && linux-info_pkg_setup
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
+ ewarn "This also disables fax, network, scanner and gui support!"
+ fi
+
+ 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
}
src_prepare() {
default
- if use !minimal ; then
- python_export EPYTHON PYTHON
- python_fix_shebang .
- fi
+ python_fix_shebang .
# Make desktop files follow the specification
# Gentoo bug: https://bugs.gentoo.org/show_bug.cgi?id=443680
@@ -146,13 +141,12 @@ src_prepare() {
}
src_configure() {
- local myconf drv_build minimal_build
+ # -Werror=lto-type-mismatch
+ # https://bugs.gentoo.org/861851
+ # https://bugs.launchpad.net/hplip/+bug/2055371
+ filter-lto
- if use libusb0 ; then
- myconf="${myconf} --enable-libusb01_build"
- else
- myconf="${myconf} --disable-libusb01_build"
- fi
+ local drv_build minimal_build
if use hpcups ; then
drv_build="$(use_enable hpcups hpcups-install)"
@@ -195,13 +189,44 @@ src_configure() {
else
minimal_build="${minimal_build} --disable-hpcups-only-build"
fi
+ minimal_build="${minimal_build} --disable-dbus-build"
+ minimal_build="${minimal_build} --disable-fax-build"
+ minimal_build="${minimal_build} --disable-network-build"
+ minimal_build="${minimal_build} --disable-scan-build"
+ minimal_build="${minimal_build} --disable-gui-build"
+ else
+ minimal_build="${minimal_build} --enable-dbus-build"
+ if use fax ; then
+ minimal_build="${minimal_build} --enable-fax-build"
+ else
+ minimal_build="${minimal_build} --disable-fax-build"
+ fi
+ if use snmp ; then
+ minimal_build="${minimal_build} --enable-network-build"
+ else
+ minimal_build="${minimal_build} --disable-network-build"
+ fi
+ if use scanner ; then
+ minimal_build="${minimal_build} --enable-scan-build"
+ else
+ minimal_build="${minimal_build} --disable-scan-build"
+ fi
+ if use qt5 ; then
+ minimal_build="${minimal_build} --enable-qt5"
+ minimal_build="${minimal_build} --enable-gui-build"
+ else
+ minimal_build="${minimal_build} --disable-gui-build"
+ minimal_build="${minimal_build} --disable-qt5"
+ fi
fi
# disable class driver for now
econf \
+ --disable-class-driver \
--disable-cups11-build \
- --disable-lite-build \
--disable-foomatic-rip-hplip-install \
+ --disable-imageProcessor-build \
+ --disable-lite-build \
--disable-shadow-build \
--disable-qt3 \
--disable-qt4 \
@@ -210,20 +235,13 @@ src_configure() {
--with-cupsfilterdir=$(cups-config --serverbin)/filter \
--with-docdir=/usr/share/doc/${PF} \
--with-htmldir=/usr/share/doc/${PF}/html \
- ${myconf} \
+ --enable-hpps-install \
${drv_build} \
${minimal_build} \
- --enable-hpps-install \
- --disable-class-driver \
$(use_enable doc doc-build) \
- $(use_enable fax fax-build) \
- $(use_enable !minimal gui-build) \
- $(use_enable !minimal dbus-build) \
+ $(use_enable libusb0 libusb01_build) \
$(use_enable parport pp-build) \
- $(use_enable policykit) \
- $(use_enable qt5) \
- $(use_enable scanner scan-build) \
- $(use_enable snmp network-build)
+ $(use_enable policykit)
# hpijs ppds are created at configure time but are not installed (3.17.11)
@@ -263,14 +281,16 @@ src_install() {
find "${D}" -name '*.la' -delete || die
- if use !minimal ; then
- python_export EPYTHON PYTHON
- python_optimize "${ED}"/usr/share/hplip
- fi
+ python_optimize "${ED}"/usr/share/hplip
readme.gentoo_create_doc
}
pkg_postinst() {
+ udev_reload
readme.gentoo_print_elog
}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/net-print/hplip/metadata.xml b/net-print/hplip/metadata.xml
index 26f82b7f1847..e50e7c0a00ef 100644
--- a/net-print/hplip/metadata.xml
+++ b/net-print/hplip/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>billie@gentoo.org</email>
@@ -14,7 +14,6 @@
<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</pkg> SLOT 0. Some old printers do not work with <pkg>virtual/libusb</pkg> SLOT 1.</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>
diff --git a/net-print/ink/Manifest b/net-print/ink/Manifest
index 317ef636ecf2..7221b969191e 100644
--- a/net-print/ink/Manifest
+++ b/net-print/ink/Manifest
@@ -1,2 +1 @@
-DIST ink-0.5.1.tar.gz 105174 BLAKE2B dc5807ee0f87e8e48e283e86d7d9ea9fe74b407591448eb66d45871185c2439fb97c81ef8c6ab0d10d871f28c49bd0d3a55b981d126314af829420ecacec7bb2 SHA512 12a21279ca4f390c5748b8ab1c62770c82decec1f9bfa3e6c13d7a269a7cb28fb96f92506c532f52fb4e3f1b72012e2c2a08e654a91edb1c73d1f7b778dc5848
-DIST ink-0.5.2.tar.gz 120024 BLAKE2B f90038992759c484bcf12f949feebd92d202e4e392873ac579733032964a928556fe0d380b814cf5f9519d7e9be964964e1b60b1913b083dd9573e5636351875 SHA512 3e04646141b4c3267cf6e29b28b84b2a879a8edbe3356e469b8195b8fb97787144d167ec2bab41b3365c3171638a31dd566cb690725711d942528e2b4c6d4195
+DIST ink-0.5.3.tar.gz 111791 BLAKE2B 15269a5ea267434f529256aeb144950111ffdaf9d9e182b62f5e1b0b3e6340495a2fdf22ffa6578a1960259a5f1a9097f27ca09ea6ecb1fb1f702aa15b7b2b5b SHA512 a05a3647d0fcae652f1b339006d22b7324e42615ed63fed47269dad409d0a6bd7640b9ec9fb6871d7ff0027af2577b64af98cbb8d9e38810e3b26490a5c0a2a1
diff --git a/net-print/ink/ink-0.5.2.ebuild b/net-print/ink/ink-0.5.2.ebuild
deleted file mode 100644
index c74f9fc83d85..000000000000
--- a/net-print/ink/ink-0.5.2.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-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.1.ebuild b/net-print/ink/ink-0.5.3.ebuild
index f0776c35f68c..766b299210e4 100644
--- a/net-print/ink/ink-0.5.1.ebuild
+++ b/net-print/ink/ink-0.5.3.ebuild
@@ -1,21 +1,15 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="5"
+EAPI=8
DESCRIPTION="A command line utility to display the ink level of your printer"
-SRC_URI="mirror://sourceforge/ink/${P/_}.tar.gz"
+SRC_URI="https://downloads.sourceforge.net/ink/${P/_}.tar.gz"
HOMEPAGE="http://ink.sourceforge.net/"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 x86"
-IUSE=""
-DEPEND=">net-print/libinklevel-0.8"
+DEPEND="net-print/libinklevel"
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
index 4784540fe957..f07b456ea944 100644
--- a/net-print/ink/metadata.xml
+++ b/net-print/ink/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>printing@gentoo.org</email>
diff --git a/net-print/kyocera-1x2x-mfp-driver/metadata.xml b/net-print/kyocera-1x2x-mfp-driver/metadata.xml
index ebe2cdf388d4..37e15e9dd378 100644
--- a/net-print/kyocera-1x2x-mfp-driver/metadata.xml
+++ b/net-print/kyocera-1x2x-mfp-driver/metadata.xml
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>firegurafiku@gmail.com</email>
<name>Pavel Kretov</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
diff --git a/net-print/kyocera-mita-ppds/Manifest b/net-print/kyocera-mita-ppds/Manifest
deleted file mode 100644
index 729255f532dd..000000000000
--- a/net-print/kyocera-mita-ppds/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST Linux_PPDs_KSL8_4.zip 6468249 BLAKE2B fdfa3a2ee119cd0cc0acb75b9b7dcb67f45605ff0e5dfc6011f46310298d7807d226887e54f81969b979551577e1acbc65f99c9d45dd66b0fe1f94b4d9ac05a9 SHA512 4e98f9972f6158262878b4fe811165ab05de8582d608c60400568a1eaaa1721fbe13394ad6e9aa93e21ed2ff30265856b64ecd1f3ae69ba49c7f9d88a7911833
diff --git a/net-print/kyocera-mita-ppds/kyocera-mita-ppds-8.4-r1.ebuild b/net-print/kyocera-mita-ppds/kyocera-mita-ppds-8.4-r1.ebuild
deleted file mode 100644
index 739a186c508c..000000000000
--- a/net-print/kyocera-mita-ppds/kyocera-mita-ppds-8.4-r1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-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="l10n_de +l10n_en l10n_es l10n_fr l10n_it l10n_pt"
-REQUIRED_USE="|| ( l10n_de l10n_en l10n_es l10n_fr l10n_it l10n_pt )"
-RESTRICT="fetch bindist"
-
-RDEPEND="net-print/cups"
-DEPEND="app-arch/unzip"
-
-S="${WORKDIR}/PPD's_KSL_${PV}"
-
-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_install() {
- insinto /usr/share/cups/model/KyoceraMita
-
- inslanguage() {
- if use l10n_$1; then
- doins $2/*.ppd
- fi
- }
-
- inslanguage en English
- inslanguage fr French
- inslanguage de German
- inslanguage it Italian
- inslanguage pt Portuguese
- inslanguage es Spanish
-
- docinto html
- dodoc ReadMe.htm
-}
diff --git a/net-print/kyocera-mita-ppds/metadata.xml b/net-print/kyocera-mita-ppds/metadata.xml
deleted file mode 100644
index 6f49eba8f496..000000000000
--- a/net-print/kyocera-mita-ppds/metadata.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<!-- maintainer-needed -->
-</pkgmetadata>
diff --git a/net-print/lexmark-upd-ppd/Manifest b/net-print/lexmark-upd-ppd/Manifest
new file mode 100644
index 000000000000..de02228146c9
--- /dev/null
+++ b/net-print/lexmark-upd-ppd/Manifest
@@ -0,0 +1 @@
+DIST lexmark-upd-ppd-1.0.0.20220702.tar.Z 4556832 BLAKE2B 6372a1d08c33397e8926564c831d4960b50849cf3dad7ac57610377e628f5099ae397567449a5ddaf61639b6fbccaa461e90192ef8a7eb5ec170b1fce82656e8 SHA512 10e4f6e719b13df49d70282fe4e3e0b4c6dd6402921d4fa6192768a014c22f704777ed41c4c18cffc32c348542130ca0e05f4a4052ebd5c66256853ea38e8afd
diff --git a/net-print/lexmark-upd-ppd/lexmark-upd-ppd-1.0.0.20220702.ebuild b/net-print/lexmark-upd-ppd/lexmark-upd-ppd-1.0.0.20220702.ebuild
new file mode 100644
index 000000000000..41b1efe01e00
--- /dev/null
+++ b/net-print/lexmark-upd-ppd/lexmark-upd-ppd-1.0.0.20220702.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Lexmark universal printer driver PPDs"
+HOMEPAGE="https://www.lexmark.com/en_us/support/universal-print-driver.html"
+SRC_URI="https://downloads.lexmark.com/downloads/drivers/Lexmark-UPD-PPD-Files.tar.Z -> ${P}.tar.Z"
+RESTRICT="mirror"
+
+LICENSE="Lexmark-EU2-0111"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND=""
+RDEPEND="
+ >=net-print/cups-1.4
+ net-dns/avahi
+"
+BDEPEND=""
+
+# TODO: add IUSE for foomatic and install those files too
+
+S="${WORKDIR}"/ppd_files
+
+QA_FLAGS_IGNORED="usr/libexec/cups/filter/LexCommandFileFilterG2"
+
+src_prepare() {
+ default
+ sed -i 's:/usr/lib/cups/filter/:/usr/libexec/cups/filter/:g' GlobalPPD_1.4/Lexmark_UPD_Series.ppd || die "Unable to patch hard coded PPD paths"
+}
+
+src_install() {
+ local filterdir
+ if use amd64; then filterdir="lib64";
+ elif use x86; then filterdir="lib";
+ else die "No filter for architecture"; fi
+
+ insinto /usr/share/cups/model
+ exeinto /usr/libexec/cups/filter
+
+ doins "${S}"/GlobalPPD_1.4/Lexmark_UPD_Series.ppd
+ doexe "${S}"/GlobalPPD_1.4/$filterdir/LexCommandFileFilterG2
+ doexe "${S}"/GlobalPPD_1.4/LexFaxPnHFilter
+}
diff --git a/net-print/lexmark-upd-ppd/metadata.xml b/net-print/lexmark-upd-ppd/metadata.xml
new file mode 100644
index 000000000000..78a9d6b02d0f
--- /dev/null
+++ b/net-print/lexmark-upd-ppd/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+<email>zx2c4@gentoo.org</email>
+<name>Jason A. Donenfeld</name>
+</maintainer>
+</pkgmetadata>
diff --git a/net-print/libcupsfilters/Manifest b/net-print/libcupsfilters/Manifest
new file mode 100644
index 000000000000..9145aecf6f6d
--- /dev/null
+++ b/net-print/libcupsfilters/Manifest
@@ -0,0 +1 @@
+DIST libcupsfilters-2.0.0.tar.xz 1279856 BLAKE2B ce9d839bb700017c303c1301c7a97fd02e3657a908e685377be49557d995574a7fc5a31d4fcbda5eeb9ba2d3cd07858224540dbf0bc9fa078cfd25a58ee15a41 SHA512 279bff6dcfa76312b10dae97480914345defd90eab79c4716d4553870f73e0f9db404786fd7e2948a86ae5aedb10dca0c2984ccb4222acbd4e835cd572030d6a
diff --git a/net-print/libcupsfilters/files/libcupsfilters-2.0.0-color-space.patch b/net-print/libcupsfilters/files/libcupsfilters-2.0.0-color-space.patch
new file mode 100644
index 000000000000..37a8bce64d7b
--- /dev/null
+++ b/net-print/libcupsfilters/files/libcupsfilters-2.0.0-color-space.patch
@@ -0,0 +1,254 @@
+https://bugs.gentoo.org/927137
+https://github.com/OpenPrinting/cups-filters/issues/578
+https://github.com/OpenPrinting/libcupsfilters/commit/c6175a2f3f66dbf76bb35ec8d1ba0dc094c9dbac
+
+From c6175a2f3f66dbf76bb35ec8d1ba0dc094c9dbac Mon Sep 17 00:00:00 2001
+From: Till Kamppeter <till.kamppeter@gmail.com>
+Date: Wed, 29 Nov 2023 00:25:16 +0100
+Subject: [PATCH] raster_base_header(): Several fixes on color space selection
+
+Fixes #38
+
+The internal (static) funcrion raster_base_header() creates a CUPS or
+PWG Raster header from scratch, without using data of a PPD file by
+means of Raster header derived from the PPD. It solely uses IPP
+attributes or command line options.
+
+It distinguishes between CUPS Raster and PWG/Apple Raster headers.
+
+There were several bugs in selecting the correct color space and depth
+settings:
+
+- For PWG-Raster all attributes and options got ignored and standard
+ 8-bit sRGB set.
+
+- Without any valid color space/depth setting attribute or "auto"
+ always standard 8-bit sRGB got set as the default, regardless
+ whether the printer is actually a color printer.
+
+- Color spaces for printing in color could be set on monochrome
+ printers by options or atrributes.
+
+- Color spaces not valid on PWG Raster could be set on PWG Raster.
+
+- DeviceN modes could only be set by specifying a depth, like
+ "Device4_8" not just "Device4".
+
+Now we use 8-bit SGray as default for monochrome printers and 8-bit
+RGB for color printers. We use the printer IPP attribute
+"color-supported" to check whether the printer is color.
+
+IPP ttributes or command line options setting a color mode on a
+monochrome printer are ignored now, also, if the output format is PWG
+Raster, setting a color space not supported by PWG Raster is ignored.
+
+Now for monochrome AirPrint (Apple Raster) printers, the Raster data
+sent should be actually monochrome (grayscale) and not color.
+---
+ cupsfilters/raster.c | 103 +++++++++++++++++++++++++------------------
+ 1 file changed, 61 insertions(+), 42 deletions(-)
+
+diff --git a/cupsfilters/raster.c b/cupsfilters/raster.c
+index 32a8b807..5e10f3bb 100644
+--- a/cupsfilters/raster.c
++++ b/cupsfilters/raster.c
+@@ -792,7 +792,7 @@ cfRasterSetColorSpace(cups_page_header_t *h, // I - Raster header
+
+
+ static int // O - -1 on error, 0 on success
+-raster_base_header(cups_page_header2_t *h, // O - Raster header
++raster_base_header(cups_page_header2_t *h, // O - Raster header
+ cf_filter_data_t *data, // I - Filter data
+ int pwg_raster) // I - 1 if PWG/Apple Raster
+ {
+@@ -1420,41 +1420,46 @@ raster_base_header(cups_page_header_t *h, // O - Raster header
+ // TODO - Support for MediaType number
+ h->cupsMediaType = 0;
+
+- // Only for CUPS Raster, if we do not have a sample header from a PPD file
+- if (pwg_raster == 0 &&
+- ((val = cupsGetOption("pwg-raster-document-type", num_options,
+- options)) != NULL ||
+- (val = cupsGetOption("PwgRasterDocumentType", num_options,
+- options)) != NULL ||
+- (val = cupsGetOption("color-space", num_options, options)) != NULL ||
+- (val = cupsGetOption("ColorSpace", num_options, options)) != NULL ||
+- (val = cupsGetOption("color-model", num_options, options)) != NULL ||
+- (val = cupsGetOption("ColorModel", num_options, options)) != NULL ||
+- (val = cupsGetOption("print-color-mode", num_options, options)) !=
+- NULL ||
+- (val = cupsGetOption("output-mode", num_options, options)) != NULL ||
+- (val = cupsGetOption("OutputMode", num_options, options)) != NULL ||
+- (val = cfIPPAttrEnumValForPrinter(data->printer_attrs,
+- data->job_attrs,
+- "print-color-mode")) != NULL))
++
++ // Do we have a color printer?
++ bool is_color =
++ ((attr = ippFindAttribute(data->printer_attrs, "color-supported",
++ IPP_TAG_BOOLEAN)) != NULL &&
++ ippGetBoolean(attr, 0));
++
++ // Color modes
++ int numcolors = 0; // Number of colorants
++ if ((val = cupsGetOption("pwg-raster-document-type", num_options,
++ options)) != NULL ||
++ (val = cupsGetOption("PwgRasterDocumentType", num_options,
++ options)) != NULL ||
++ (val = cupsGetOption("color-space", num_options, options)) != NULL ||
++ (val = cupsGetOption("ColorSpace", num_options, options)) != NULL ||
++ (val = cupsGetOption("color-model", num_options, options)) != NULL ||
++ (val = cupsGetOption("ColorModel", num_options, options)) != NULL ||
++ (val = cupsGetOption("print-color-mode", num_options, options)) !=
++ NULL ||
++ (val = cupsGetOption("output-mode", num_options, options)) != NULL ||
++ (val = cupsGetOption("OutputMode", num_options, options)) != NULL ||
++ (val = cfIPPAttrEnumValForPrinter(data->printer_attrs,
++ data->job_attrs,
++ "print-color-mode")) != NULL)
+ {
+ int bitspercolor, // Bits per color
+ bitsperpixel, // Bits per pixel
+- colorspace, // CUPS/PWG raster color space
+- numcolors; // Number of colorants
++ colorspace; // CUPS/PWG raster color space;
+ const char *ptr; // Pointer into value
+
+ ptr = NULL;
+- numcolors = 0;
+ bitspercolor = 8;
+- if (!strncasecmp(val, "AdobeRgb", 8))
++ if (is_color && !strncasecmp(val, "AdobeRgb", 8))
+ {
+ if (*(val + 8) == '_' || *(val + 8) == '-')
+ ptr = val + 9;
+ colorspace = 20;
+ numcolors = 3;
+ }
+- else if (!strncasecmp(val, "adobe-rgb", 9))
++ else if (is_color && !strncasecmp(val, "adobe-rgb", 9))
+ {
+ if (*(val + 9) == '_' || *(val + 9) == '-')
+ ptr = val + 10;
+@@ -1500,19 +1505,19 @@ raster_base_header(cups_page_header_t *h, // O - Raster header
+ colorspace = 18;
+ numcolors = 1;
+ }
+- else if (!strcasecmp(val, "color"))
++ else if (is_color && !strcasecmp(val, "color"))
+ {
+ colorspace = 19;
+ numcolors = 3;
+ }
+- else if (!strncasecmp(val, "Cmyk", 4))
++ else if (is_color && !strncasecmp(val, "Cmyk", 4))
+ {
+ if (*(val + 4) == '_' || *(val + 4) == '-')
+ ptr = val + 5;
+ colorspace = 6;
+ numcolors = 4;
+ }
+- else if (!strncasecmp(val, "Cmy", 3))
++ else if (!pwg_raster && is_color && !strncasecmp(val, "Cmy", 3))
+ {
+ if (*(val + 3) == '_' || *(val + 3) == '-')
+ ptr = val + 4;
+@@ -1524,10 +1529,9 @@ raster_base_header(cups_page_header_t *h, // O - Raster header
+ ptr = val + 6;
+ numcolors = strtol(ptr, (char **)&ptr, 10);
+ if (*ptr == '_' || *ptr == '-')
+- {
+ ptr ++;
++ if (numcolors > 0 && numcolors < 16)
+ colorspace = 47 + numcolors;
+- }
+ else
+ {
+ numcolors = 0;
+@@ -1548,21 +1552,21 @@ raster_base_header(cups_page_header_t *h, // O - Raster header
+ colorspace = 18;
+ numcolors = 1;
+ }
+- else if (!strncasecmp(val, "Srgb", 4))
++ else if (is_color && !strncasecmp(val, "Srgb", 4))
+ {
+ if (*(val + 4) == '_' || *(val + 4) == '-')
+ ptr = val + 5;
+ colorspace = 19;
+ numcolors = 3;
+ }
+- else if (!strncasecmp(val, "Rgbw", 4))
++ else if (!pwg_raster && is_color && !strncasecmp(val, "Rgbw", 4))
+ {
+ if (*(val + 4) == '_' || *(val + 4) == '-')
+ ptr = val + 5;
+ colorspace = 17;
+ numcolors = 4;
+ }
+- else if (!strncasecmp(val, "Rgb", 3))
++ else if (is_color && !strncasecmp(val, "Rgb", 3))
+ {
+ if (*(val + 3) == '_' || *(val + 3) == '-')
+ ptr = val + 4;
+@@ -1572,12 +1576,22 @@ raster_base_header(cups_page_header_t *h, // O - Raster header
+ else if (!strcasecmp(val, "auto"))
+ {
+ // Let "auto" not look like an error
+- colorspace = 19;
+- numcolors = 3;
++ if (is_color)
++ {
++ colorspace = 19;
++ numcolors = 3;
++ }
++ else
++ {
++ colorspace = 18;
++ numcolors = 1;
++ }
+ }
++
++ // Color mode found
+ if (numcolors > 0)
+ {
+- if (ptr)
++ if (ptr && *ptr)
+ bitspercolor = strtol(ptr, (char **)&ptr, 10);
+ bitsperpixel = bitspercolor * numcolors;
+ // In 1-bit-per-color RGB modes we add a forth bit to each pixel
+@@ -1590,20 +1604,25 @@ raster_base_header(cups_page_header_t *h, // O - Raster header
+ h->cupsColorSpace = colorspace;
+ h->cupsNumColors = numcolors;
+ }
+- else
++ }
++
++ // No color mode found
++ if (numcolors == 0)
++ {
++ if (is_color)
+ {
+ h->cupsBitsPerColor = 8;
+ h->cupsBitsPerPixel = 24;
+ h->cupsColorSpace = 19;
+ h->cupsNumColors = 3;
+ }
+- }
+- else
+- {
+- h->cupsBitsPerColor = 8;
+- h->cupsBitsPerPixel = 24;
+- h->cupsColorSpace = 19;
+- h->cupsNumColors = 3;
++ else
++ {
++ h->cupsBitsPerColor = 8;
++ h->cupsBitsPerPixel = 8;
++ h->cupsColorSpace = 18;
++ h->cupsNumColors = 1;
++ }
+ }
+
+ // TODO - Support for color orders 1 (banded) and 2 (planar)
+
+
diff --git a/net-print/libcupsfilters/files/libcupsfilters-2.0.0-r3-c++17.patch b/net-print/libcupsfilters/files/libcupsfilters-2.0.0-r3-c++17.patch
new file mode 100644
index 000000000000..be74a216d22a
--- /dev/null
+++ b/net-print/libcupsfilters/files/libcupsfilters-2.0.0-r3-c++17.patch
@@ -0,0 +1,17 @@
+https://bugs.gentoo.org/923959
+https://github.com/OpenPrinting/libcupsfilters/issues/35
+https://github.com/OpenPrinting/libcupsfilters/commit/668d7dac277c1d44732fc25e5491c79ff82e597d
+--- a/cupsfilters/pdftoraster.cxx
++++ b/cupsfilters/pdftoraster.cxx
+@@ -2198,7 +2198,11 @@
+ // For compatibility with g++ >= 4.7 compilers _GLIBCXX_THROW
+ // should be used as a guard, otherwise use traditional definition
+ #ifndef _GLIBCXX_THROW
++#if __cplusplus < 201703L
+ #define _GLIBCXX_THROW throw
++#else
++#define _GLIBCXX_THROW(...) noexcept(false)
++#endif
+ #endif
+
+ void * operator new(size_t size) _GLIBCXX_THROW (std::bad_alloc)
diff --git a/net-print/libcupsfilters/files/libcupsfilters-2.0.0-raster-build-fix.patch b/net-print/libcupsfilters/files/libcupsfilters-2.0.0-raster-build-fix.patch
new file mode 100644
index 000000000000..c274b8473c47
--- /dev/null
+++ b/net-print/libcupsfilters/files/libcupsfilters-2.0.0-raster-build-fix.patch
@@ -0,0 +1,28 @@
+https://bugs.gentoo.org/927137
+https://github.com/OpenPrinting/cups-filters/issues/578
+https://github.com/OpenPrinting/libcupsfilters/commit/107091186dce1c0cb2f042f8b880f571089acaf1
+
+From 107091186dce1c0cb2f042f8b880f571089acaf1 Mon Sep 17 00:00:00 2001
+From: zdohnal <zdohnal@redhat.com>
+Date: Wed, 29 Nov 2023 13:30:48 +0100
+Subject: [PATCH] raster.c: Fix build after last fix (#40)
+
+Add header file `stdbool`, since we started to use `bool` in
+`raster_base_header()`.
+---
+ cupsfilters/raster.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/cupsfilters/raster.c b/cupsfilters/raster.c
+index 5e10f3bb..e9a8ad1f 100644
+--- a/cupsfilters/raster.c
++++ b/cupsfilters/raster.c
+@@ -29,6 +29,7 @@
+ #include <cupsfilters/ipp.h>
+ #include <cupsfilters/libcups2-private.h>
+ #include <cups/pwg.h>
++#include <stdbool.h>
+
+ //
+ // Local functions
+
diff --git a/net-print/libcupsfilters/files/libcupsfilters-2.0.0-raster-gray.patch b/net-print/libcupsfilters/files/libcupsfilters-2.0.0-raster-gray.patch
new file mode 100644
index 000000000000..e1648c041e97
--- /dev/null
+++ b/net-print/libcupsfilters/files/libcupsfilters-2.0.0-raster-gray.patch
@@ -0,0 +1,50 @@
+https://bugs.gentoo.org/927137
+https://github.com/OpenPrinting/cups-filters/issues/578
+https://github.com/OpenPrinting/libcupsfilters/commit/78cc6758d98c31397c8addefaa3dfd8746331b72
+
+From 78cc6758d98c31397c8addefaa3dfd8746331b72 Mon Sep 17 00:00:00 2001
+From: zdohnal <zdohnal@redhat.com>
+Date: Thu, 7 Mar 2024 18:27:06 +0100
+Subject: [PATCH] raster.c: Always use sRGB/sGray if driver is PWG/URF and
+ RGB/Gray is requested (#51)
+
+Some driverless printers (EPSON L3160 in Fedora report) stopped working
+after commit c6175a2 if `ColorModel=RGB` is passed as option. A
+different CUPS color space is assigned with the fix - CUPS_CSPACE_RGB,
+which results in no ICC profile being assigned into Ghostscript command
+line.
+
+Probably we can try other .icc profiles with CUPS_CSPACE_RGB (srgb.icc
+does not work with RGB color space), but I tested with reporter that
+using sRGB space + srgb.icc works for the printer - so the patch is to
+use sRGB if the driver is URF/PWG.
+
+Same logic applied for grayscale printing, if Gray is requested, sGray is
+used for URF/PWG.
+---
+ cupsfilters/raster.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/cupsfilters/raster.c b/cupsfilters/raster.c
+index e9a8ad1f..7b62b922 100644
+--- a/cupsfilters/raster.c
++++ b/cupsfilters/raster.c
+@@ -1550,7 +1550,7 @@ raster_base_header(cups_page_header_t *h, // O - Raster header
+ {
+ if (*(val + 4) == '_' || *(val + 4) == '-')
+ ptr = val + 5;
+- colorspace = 18;
++ colorspace = pwg_raster ? 18 : 3;
+ numcolors = 1;
+ }
+ else if (is_color && !strncasecmp(val, "Srgb", 4))
+@@ -1571,7 +1571,7 @@ raster_base_header(cups_page_header_t *h, // O - Raster header
+ {
+ if (*(val + 3) == '_' || *(val + 3) == '-')
+ ptr = val + 4;
+- colorspace = 1;
++ colorspace = pwg_raster ? 19 : 1;
+ numcolors = 3;
+ }
+ else if (!strcasecmp(val, "auto"))
+
diff --git a/net-print/libcupsfilters/libcupsfilters-2.0.0-r3.ebuild b/net-print/libcupsfilters/libcupsfilters-2.0.0-r3.ebuild
new file mode 100644
index 000000000000..6a44a004e2a7
--- /dev/null
+++ b/net-print/libcupsfilters/libcupsfilters-2.0.0-r3.ebuild
@@ -0,0 +1,75 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit libtool
+
+DESCRIPTION="library for developing printing features, split out of cups-filters"
+HOMEPAGE="https://github.com/OpenPrinting/libcupsfilters"
+SRC_URI="https://github.com/OpenPrinting/libcupsfilters/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="dbus exif jpeg pdf +poppler +postscript png test tiff"
+KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=app-text/qpdf-8.3.0:=
+ media-libs/fontconfig
+ media-libs/lcms:2
+ >=net-print/cups-2
+ !<net-print/cups-filters-2.0.0
+
+ exif? ( media-libs/libexif )
+ dbus? ( sys-apps/dbus )
+ jpeg? ( media-libs/libjpeg-turbo:= )
+ pdf? ( app-text/mupdf )
+ postscript? ( app-text/ghostscript-gpl[cups] )
+ poppler? ( >=app-text/poppler-0.32[cxx] )
+ png? ( media-libs/libpng:= )
+ tiff? ( media-libs/tiff:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=sys-devel/gettext-0.18.3
+ virtual/pkgconfig
+ test? ( media-fonts/dejavu )
+"
+
+PATCHES=(
+ "${FILESDIR}/${P}-r3-c++17.patch"
+)
+
+src_prepare() {
+ default
+
+ # respect --as-needed
+ elibtoolize
+}
+
+src_configure() {
+ local myeconfargs=(
+ --enable-imagefilters
+ --localstatedir="${EPREFIX}"/var
+ --with-cups-rundir="${EPREFIX}"/run/cups
+
+ $(use_enable exif)
+ $(use_enable dbus)
+ $(use_enable poppler)
+ $(use_enable postscript ghostscript)
+ $(use_enable pdf mutool)
+ $(use_with jpeg)
+ $(use_with png)
+ $(use_with tiff)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/net-print/libcupsfilters/libcupsfilters-2.0.0-r4.ebuild b/net-print/libcupsfilters/libcupsfilters-2.0.0-r4.ebuild
new file mode 100644
index 000000000000..555c55040cd5
--- /dev/null
+++ b/net-print/libcupsfilters/libcupsfilters-2.0.0-r4.ebuild
@@ -0,0 +1,77 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit libtool
+
+DESCRIPTION="library for developing printing features, split out of cups-filters"
+HOMEPAGE="https://github.com/OpenPrinting/libcupsfilters"
+SRC_URI="https://github.com/OpenPrinting/libcupsfilters/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
+IUSE="dbus exif jpeg pdf +poppler +postscript png test tiff"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=app-text/qpdf-8.3.0:=
+ media-libs/fontconfig
+ media-libs/lcms:2
+ >=net-print/cups-2
+ !<net-print/cups-filters-2.0.0
+
+ exif? ( media-libs/libexif )
+ dbus? ( sys-apps/dbus )
+ jpeg? ( media-libs/libjpeg-turbo:= )
+ pdf? ( app-text/mupdf )
+ postscript? ( app-text/ghostscript-gpl[cups] )
+ poppler? ( >=app-text/poppler-0.32[cxx] )
+ png? ( media-libs/libpng:= )
+ tiff? ( media-libs/tiff:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=sys-devel/gettext-0.18.3
+ virtual/pkgconfig
+ test? ( media-fonts/dejavu )
+"
+
+PATCHES=(
+ "${FILESDIR}/${P}-r3-c++17.patch"
+ "${FILESDIR}/${P}-color-space.patch"
+ "${FILESDIR}/${P}-raster-build-fix.patch"
+ "${FILESDIR}/${P}-raster-gray.patch"
+)
+
+src_prepare() {
+ default
+
+ # respect --as-needed
+ elibtoolize
+}
+
+src_configure() {
+ local myeconfargs=(
+ --enable-imagefilters
+ --localstatedir="${EPREFIX}"/var
+ --with-cups-rundir="${EPREFIX}"/run/cups
+
+ $(use_enable exif)
+ $(use_enable dbus)
+ $(use_enable poppler)
+ $(use_enable postscript ghostscript)
+ $(use_enable pdf mutool)
+ $(use_with jpeg)
+ $(use_with png)
+ $(use_with tiff)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/net-print/libcupsfilters/metadata.xml b/net-print/libcupsfilters/metadata.xml
new file mode 100644
index 000000000000..d31059e1c097
--- /dev/null
+++ b/net-print/libcupsfilters/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>printing@gentoo.org</email>
+ <name>Gentoo Printing Project</name>
+ </maintainer>
+ <use>
+ <flag name="poppler">Build the pdftoraster filter</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">OpenPrinting/libcupsfilters</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-print/libgnomecups/Manifest b/net-print/libgnomecups/Manifest
deleted file mode 100644
index f3db6f28413f..000000000000
--- a/net-print/libgnomecups/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST libgnomecups-0.2.3.tar.bz2 357129 BLAKE2B 8a8babf0af7a83232590c5e756c4e1c2ce329dae59b88ee5be84c0286a6ed6d6c39f891b7ab0bb68bfc29539769cdd82032422c44a6131c4da9c9355669b1a57 SHA512 7276dfc92209c8503d8a59ceb192273e41bc13cc5f3515dcc00444deca4b9de6a29d0ec4c89811398e03971fa3f5ccbb85ca477da6c5f2bc26f2fb70dccb6a75
diff --git a/net-print/libgnomecups/files/enablenet.patch b/net-print/libgnomecups/files/enablenet.patch
deleted file mode 100644
index f2e113d1440f..000000000000
--- a/net-print/libgnomecups/files/enablenet.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- 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
deleted file mode 100644
index 68f379c25109..000000000000
--- a/net-print/libgnomecups/files/libgnomecups-0.2.3-cups-1.6.patch
+++ /dev/null
@@ -1,285 +0,0 @@
-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
deleted file mode 100644
index 10eb75d1bc46..000000000000
--- a/net-print/libgnomecups/files/libgnomecups-0.2.3-cups-config.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-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
deleted file mode 100644
index 797231416b64..000000000000
--- a/net-print/libgnomecups/files/libgnomecups-0.2.3-format-string.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-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
deleted file mode 100644
index 3383cde16786..000000000000
--- a/net-print/libgnomecups/files/libgnomecups-0.2.3-g_list_find_custom.patch
+++ /dev/null
@@ -1,94 +0,0 @@
-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
deleted file mode 100644
index 3f73af861c04..000000000000
--- a/net-print/libgnomecups/files/libgnomecups-0.2.3-glib.h.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-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
deleted file mode 100644
index b682e450746a..000000000000
--- a/net-print/libgnomecups/files/libgnomecups-0.2.3-lpoptions.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- 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
deleted file mode 100644
index 8fe6502a6f38..000000000000
--- a/net-print/libgnomecups/files/libgnomecups-0.2.3-pkgconfig.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- 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
deleted file mode 100644
index bf943d4fba6d..000000000000
--- a/net-print/libgnomecups/libgnomecups-0.2.3-r3.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-GCONF_DEBUG="yes"
-GNOME_TARBALL_SUFFIX="bz2"
-
-inherit autotools eutils gnome2
-
-DESCRIPTION="GNOME cups library"
-HOMEPAGE="https://www.gnome.org/"
-
-LICENSE="GPL-2 LGPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ~ia64 ppc ppc64 sparc x86"
-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
deleted file mode 100644
index 4ede34cd9338..000000000000
--- a/net-print/libgnomecups/libgnomecups-0.2.3-r5.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-GCONF_DEBUG="yes"
-GNOME_TARBALL_SUFFIX="bz2"
-
-inherit autotools eutils gnome2 multilib-minimal
-
-DESCRIPTION="GNOME cups library"
-HOMEPAGE="https://www.gnome.org/"
-
-LICENSE="GPL-2 LGPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ~ia64 ppc ppc64 sparc x86"
-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
deleted file mode 100644
index 0d5df29788c2..000000000000
--- a/net-print/libgnomecups/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>gnome@gentoo.org</email>
- <name>Gentoo GNOME Desktop</name>
-</maintainer>
-<maintainer type="project">
- <email>printing@gentoo.org</email>
- <name>Gentoo Printing Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/net-print/libinklevel/Manifest b/net-print/libinklevel/Manifest
index e57b5a8b883a..cbd810bdce57 100644
--- a/net-print/libinklevel/Manifest
+++ b/net-print/libinklevel/Manifest
@@ -1 +1 @@
-DIST libinklevel-0.9.2.tar.gz 367928 BLAKE2B f74af31529246668a0bc00c17b2ec1432532eb484b7efb230873e251c26b349ff26f4eb51f7f610198416964c090f60232f10e40f5170783cbe806cbcf849155 SHA512 127acaef2d2c09981b4da80e4d86a869c66f0f2f9733e139800bc944c159ddca42829499a97ecbb712b74c950bb28a4e22382c9c2a42d374bc5593f8802b6c59
+DIST libinklevel-0.9.3.tar.gz 385622 BLAKE2B c44726239d09719b634046dd40e168b6d0aefe86e675ac6669e7ffcefffbe30f9116fd2b778d7b6c9ae06d7781126202b6dcdddc50359e8905c9dab3893a6cb7 SHA512 bc45661fb861fb8fc6e209ceb4023e7eed2e474e05de76a9185e698aac7bc14d302bd254a1d95bdda104bce066d85ca27bb69d6620e17eca41b95bb279a6ad47
diff --git a/net-print/libinklevel/files/libinklevel-0.9.2-autoconf-2.70.patch b/net-print/libinklevel/files/libinklevel-0.9.2-autoconf-2.70.patch
new file mode 100644
index 000000000000..462f23eb73b1
--- /dev/null
+++ b/net-print/libinklevel/files/libinklevel-0.9.2-autoconf-2.70.patch
@@ -0,0 +1,51 @@
+https://sources.debian.org/patches/libinklevel/0.9.3-3/0001-configure.ac-fix-ftbfs-with-autoconf2.70.patch/
+https://bugs.gentoo.org/750173
+
+From: Boyuan Yang <byang@debian.org>
+Date: Sat, 16 Jan 2021 11:03:56 -0500
+Subject: configure.ac: fix ftbfs with autoconf2.70
+
+Applied-Upstream: email, yes
+--- a/configure.ac
++++ b/configure.ac
+@@ -12,7 +12,7 @@ ABI_VERSION=5:0:0
+
+ dnl no more configuration after this line
+
+-AC_CONFIG_SRCDIR(libinklevel.c)
++AC_CONFIG_SRCDIR([libinklevel.c])
+
+ ## Determine hostname & OS
+ ## AC_CANONICAL_HOST
+@@ -77,9 +77,9 @@ AC_CHECK_HEADERS([ifaddrs.h])
+
+ ## Check for mandatory header files
+
+-AC_CHECK_HEADERS([arpa/inet.h fcntl.h netdb.h netinet/in.h \
++AC_CHECK_HEADERS([arpa/inet.h fcntl.h netdb.h netinet/in.h \
+ sys/ioctl.h sys/socket.h sys/time.h sys/timeb.h wchar.h ]
+- ,,AC_MSG_ERROR( required header file missing ))
++ ,,AC_MSG_ERROR([required header file missing]))
+
+ ## determine libraries that need to get linked
+
+@@ -96,7 +96,7 @@ AC_CHECK_FUNCS([getifaddrs])
+ AC_CHECK_FUNCS([alarm ftime gethostbyaddr gethostbyname gettimeofday inet_ntoa \
+ memset select socket strchr strdup strerror strncasecmp strstr \
+ gethostname]
+- ,,AC_MSG_ERROR( required library function missing ))
++ ,,AC_MSG_ERROR([required library function missing]))
+ AC_FUNC_MALLOC
+ AC_FUNC_REALLOC
+ AC_HEADER_RESOLV
+@@ -117,8 +117,8 @@ case $host in
+ PKG_CHECK_MODULES([LIBUSB1], [libusb-1.0]);;
+
+ *-freebsd*) AC_DEFINE_UNQUOTED(HOST_OS,FREEBSD,[Host OS])
+- AC_CHECK_LIB([usb], libusb_init,, AC_MSG_ERROR(Library not found),);;
+- *-*-*) AC_MSG_ERROR( Host OS not (yet) supported) ;;
++ AC_CHECK_LIB([usb], libusb_init,, AC_MSG_ERROR([Library not found]),);;
++ *-*-*) AC_MSG_ERROR([Host OS not (yet) supported]) ;;
+ esac
+
+ ## Variables to be exported
diff --git a/net-print/libinklevel/libinklevel-0.9.2.ebuild b/net-print/libinklevel/libinklevel-0.9.3.ebuild
index 48ac1c077b47..3e9d079e6f5f 100644
--- a/net-print/libinklevel/libinklevel-0.9.2.ebuild
+++ b/net-print/libinklevel/libinklevel-0.9.3.ebuild
@@ -1,29 +1,35 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=8
-inherit autotools eutils multilib
+inherit autotools
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"
+SRC_URI="https://downloads.sourceforge.net/libinklevel/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ~ppc x86"
-LICENSE="GPL-2"
-IUSE="debug static-libs"
+IUSE="debug"
DEPEND=">=sys-libs/libieee1284-0.2.11
virtual/libusb:1"
RDEPEND="${DEPEND}"
-S="${WORKDIR}/${MY_P}"
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.9.2-autoconf-2.70.patch
+)
src_prepare() {
+ default
+
sed -i -e "/^dist_doc_DATA/d" Makefile.am \
|| die "Failed to disable installation of docs"
+
eautoreconf
}
@@ -32,7 +38,6 @@ src_configure() {
}
src_install() {
- emake DESTDIR="${D}" install
- dodoc AUTHORS ChangeLog NEWS README
- use static-libs || rm "${D}"/usr/$(get_libdir)/libinklevel.{a,la}
+ default
+ find "${ED}" -name '*.la' -delete || die
}
diff --git a/net-print/libinklevel/metadata.xml b/net-print/libinklevel/metadata.xml
index 2ae8f556b809..fa03614f75b6 100644
--- a/net-print/libinklevel/metadata.xml
+++ b/net-print/libinklevel/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>printing@gentoo.org</email>
diff --git a/net-print/libppd/Manifest b/net-print/libppd/Manifest
new file mode 100644
index 000000000000..bc6ba554c08c
--- /dev/null
+++ b/net-print/libppd/Manifest
@@ -0,0 +1 @@
+DIST libppd-2.0.0.tar.xz 580716 BLAKE2B 8505c5ab5b515104308624a8f78505343b894df08ab8ac2727d7bd82d0d65d256d22ecaf384b212d9a5c45d2a619a6311722a8c5ed954b7a8a9780477aedb458 SHA512 8be9e67552528606fd804ba13b05710938ed7d02316c1c902ee657bc0e5fade663ffacb5b032609a1c1fdc80d976e7e54d2ca2f71db83cb8fdcee6a371e6bad4
diff --git a/net-print/libppd/files/libppd-2.0.0-slibtool.patch b/net-print/libppd/files/libppd-2.0.0-slibtool.patch
new file mode 100644
index 000000000000..5491ac1fd896
--- /dev/null
+++ b/net-print/libppd/files/libppd-2.0.0-slibtool.patch
@@ -0,0 +1,64 @@
+https://github.com/OpenPrinting/libppd/pull/32
+https://github.com/OpenPrinting/libppd/commit/a040f26f3ca103c8ae7706d91ae157dca0974c49
+
+From e614c21b82a2f85487fe406a8bf4a2c9064501f8 Mon Sep 17 00:00:00 2001
+From: Eli Schwartz <eschwartz93@gmail.com>
+Date: Mon, 18 Dec 2023 22:28:21 -0500
+Subject: [PATCH] build: fix failure to correctly link to zlib
+
+Checking for the header is NOT sufficient when utilizing its shared
+library symbols. Look it up with pkg-config explicitly, and explicitly
+add it to ensure that at runtime, libppd has its own DT_NEEDED
+dependency on libz.so; if libppd successfully links at all -- not a
+given, if -Wl,-no-undefined is used -- then it *may* transitively get
+libz.so from its recursive dependencies, but this is no guarantee at
+all.
+
+Fixes failure to build discovered at https://bugs.gentoo.org/920273
+---
+ Makefile.am | 2 ++
+ configure.ac | 8 +++++++-
+ 2 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 7aed422b..c44aa3e0 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -120,9 +120,11 @@ libppd_la_SOURCES = \
+ $(pkgppddefs_DATA)
+ libppd_la_LIBADD = \
+ $(LIBCUPSFILTERS_LIBS) \
++ $(ZLIB_LIBS) \
+ $(CUPS_LIBS)
+ libppd_la_CFLAGS = \
+ $(LIBCUPSFILTERS_CFLAGS) \
++ $(ZLIB_CFLAGS) \
+ $(CUPS_CFLAGS)
+ libppd_la_CXXFLAGS = \
+ $(libppd_la_CFLAGS)
+diff --git a/configure.ac b/configure.ac
+index 66927d80..7d8a459b 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -164,6 +164,13 @@ AC_SUBST(CUPS_STATEDIR)
+ # ========================
+ PKG_CHECK_MODULES([LIBCUPSFILTERS], [libcupsfilters])
+
++# ==============
++# Check for zlib
++# ==============
++PKG_CHECK_MODULES([ZLIB], [zlib], ,[
++ AC_CHECK_HEADER([zlib.h])
++ AC_CHECK_LIB([z], [deflateInit])])
++
+ # ============================================================
+ # Check for whether we want to install the testppdfile utility
+ # ============================================================
+@@ -220,7 +227,6 @@ AC_CHECK_HEADERS([stdlib.h])
+ AC_CHECK_HEADERS([sys/stat.h])
+ AC_CHECK_HEADERS([sys/types.h])
+ AC_CHECK_HEADERS([unistd.h])
+-AC_CHECK_HEADERS([zlib.h])
+ AC_CHECK_HEADERS([endian.h])
+ AC_CHECK_HEADERS([dirent.h])
+ AC_CHECK_HEADERS([sys/ioctl.h])
diff --git a/net-print/libppd/libppd-2.0.0.ebuild b/net-print/libppd/libppd-2.0.0.ebuild
new file mode 100644
index 000000000000..763f0c6558a3
--- /dev/null
+++ b/net-print/libppd/libppd-2.0.0.ebuild
@@ -0,0 +1,63 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Legacy library for PPD files, split out of cups-filters"
+HOMEPAGE="https://github.com/OpenPrinting/libppd"
+SRC_URI="https://github.com/OpenPrinting/libppd/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="+postscript +poppler"
+KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
+
+# pdftops has various possible implementations, but the default
+# really needs to be decent
+REQUIRED_USE="|| ( postscript poppler )"
+
+RDEPEND="
+ >=net-print/cups-2
+ net-print/libcupsfilters
+ !<net-print/cups-filters-2.0.0
+ postscript? ( >=app-text/ghostscript-gpl-9.09[cups] )
+ poppler? ( >=app-text/poppler-0.32[utils] )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=sys-devel/gettext-0.18.3
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-slibtool.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ --localstatedir="${EPREFIX}"/var
+ --with-cups-rundir="${EPREFIX}"/run/cups
+ # This does build time checks for (preferred) tool interfaces.
+ $(use_enable postscript ghostscript)
+ $(use_enable poppler pdftops)
+ # These fallbacks are just probed for the path. Always enable them.
+ --with-mutool-path="${EPREFIX}"/usr/bin/mutool
+ --with-pdftocairo-path="${EPREFIX}"/usr/bin/pdftocairo # from poppler
+ # unpackaged
+ --disable-acroread
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/net-print/libppd/metadata.xml b/net-print/libppd/metadata.xml
new file mode 100644
index 000000000000..67a6452ca268
--- /dev/null
+++ b/net-print/libppd/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>printing@gentoo.org</email>
+ <name>Gentoo Printing Project</name>
+ </maintainer>
+ <use>
+ <flag name="poppler">Use the <pkg>app-text/poppler</pkg> pdftops filter</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">OpenPrinting/libppd</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-print/lm1100/Manifest b/net-print/lm1100/Manifest
deleted file mode 100644
index ab3330db8889..000000000000
--- a/net-print/lm1100/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST lm1100.1.0.2a.tar.gz 64316 BLAKE2B b47fef489b16568e2e2b0097bd79f90b1c7acb80b7fd28d00fc74c5072f83b1c2f2d6bb75534e0c678d4ad9312d222e311bd9593206acad8eaa3a5166fbbebcf SHA512 3dda80602af99d93a570e066ca2a121afd93b28b5d28b6f49b52c2c90e288de7b87cefdd5e00bf4edd73439fb6088433fabe884b841befd24183f27a12fcbcb1
-DIST lm1100maint.tar.gz 708 BLAKE2B 69b29e477a5491f88bafe92eb94a3742fe8b6074116544cd0689a98273b9bd4eb3ee5e5b74acc4e68cff3eef1d9c177b6d041db64712dad2e6fb189f56e9c1cb SHA512 fe81351705c36dd30e01d402461820ed583d2a8222af8dd81f4dff35c6629592e09fb6dbc0740b9ba0f555de65aeae41c0cb953fbedd0c8620db29b37d797b02
diff --git a/net-print/lm1100/files/lm1100-1.0.2a-class.patch b/net-print/lm1100/files/lm1100-1.0.2a-class.patch
deleted file mode 100644
index b771e1bf1449..000000000000
--- a/net-print/lm1100/files/lm1100-1.0.2a-class.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-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
deleted file mode 100644
index 60e1b5c2e7a3..000000000000
--- a/net-print/lm1100/files/lm1100-1.0.2a-fix-compile-gcc-3.4.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- 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
deleted file mode 100644
index bc797a09a44b..000000000000
--- a/net-print/lm1100/files/lm1100-1.0.2a-fix-compile-gcc-4.1.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-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
deleted file mode 100644
index b1f0a2ac4913..000000000000
--- a/net-print/lm1100/files/lm1100-1.0.2a-makefile.patch
+++ /dev/null
@@ -1,35 +0,0 @@
---- 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
deleted file mode 100644
index 5c3f4c92ea86..000000000000
--- a/net-print/lm1100/files/lm1100maint-firmware.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-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
deleted file mode 100644
index 507c39e260d8..000000000000
--- a/net-print/lm1100/lm1100-1.0.2a-r1.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-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
deleted file mode 100644
index 8f24252f25d3..000000000000
--- a/net-print/lm1100/metadata.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<!-- maintainer-needed -->
-<longdescription>The Tim Engler's Lexmark 1100 driver</longdescription>
-</pkgmetadata>
diff --git a/net-print/metadata.xml b/net-print/metadata.xml
index e4bb8b2933c1..449c4f4c247b 100644
--- a/net-print/metadata.xml
+++ b/net-print/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE catmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<catmetadata>
<longdescription lang="en">
The net-print category contains network printing packages.
@@ -30,4 +30,3 @@
Kategoria net-print zawiera programy do drukowania w sieci.
</longdescription>
</catmetadata>
-
diff --git a/net-print/mtink/files/mtink-1.0.16-fix-function-declarations.patch b/net-print/mtink/files/mtink-1.0.16-fix-function-declarations.patch
new file mode 100644
index 000000000000..459341f63a79
--- /dev/null
+++ b/net-print/mtink/files/mtink-1.0.16-fix-function-declarations.patch
@@ -0,0 +1,57 @@
+Description: fix function declarations
+ This patch fixes various conflicting and implicit function declarations
+ reported by goto-cc from the cbmc package.
+Bug-Debian: http://bugs.debian.org/749433
+Author: Graham Inggs <graham@nerve.org.za>
+Forwarded: No, nothing left to forward to
+Last-Update: 2015-05-31
+--- a/mainSrc/cmd.h
++++ b/mainSrc/cmd.h
+@@ -70,6 +70,4 @@
+ }
+ #endif
+
+-extern int devRead(int fd, unsigned char *buf, int len, int timeout);
+-extern int devWrite(int fd, unsigned char *buf, int len, int timeout);
+ #endif
+--- a/mainSrc/rw.c
++++ b/mainSrc/rw.c
+@@ -18,6 +18,8 @@
+
+ #ifndef MACOS
+ #include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
+ #include <unistd.h>
+ #include <fcntl.h>
+ #include <errno.h>
+--- a/mainSrc/cmd.c
++++ b/mainSrc/cmd.c
+@@ -53,6 +53,7 @@
+ #include "mtink.h"
+ #include "cmd.h"
+ #include "d4lib.h"
++#include "rw.h"
+
+ #ifdef MACOS
+ #include "usbHlp.h"
+--- a/mainSrc/gimp-mtink.c
++++ b/mainSrc/gimp-mtink.c
+@@ -23,6 +23,7 @@
+
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <string.h>
+ #include <libgimp/gimp.h>
+ #include <unistd.h>
+ #include <dirent.h>
+--- a/detect/askPrinter.c
++++ b/detect/askPrinter.c
+@@ -1,6 +1,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
++#include <unistd.h>
+ #include <sys/ioctl.h>
+ #include <fcntl.h>
+ #include <sys/time.h>
diff --git a/net-print/mtink/files/mtink-1.0.16-flags.patch b/net-print/mtink/files/mtink-1.0.16-flags.patch
index bee6c339e3f8..f1c4fe680247 100644
--- a/net-print/mtink/files/mtink-1.0.16-flags.patch
+++ b/net-print/mtink/files/mtink-1.0.16-flags.patch
@@ -1,6 +1,5 @@
-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 2017-01-29 18:09:40.550182789 +0100
+--- a/Makefile.ORG
++++ b/Makefile.ORG
@@ -4,7 +4,7 @@
setUid=1
gimpVersion=
diff --git a/net-print/mtink/files/mtink-1.0.16-fno-common.patch b/net-print/mtink/files/mtink-1.0.16-fno-common.patch
new file mode 100644
index 000000000000..289e2af1517c
--- /dev/null
+++ b/net-print/mtink/files/mtink-1.0.16-fno-common.patch
@@ -0,0 +1,20 @@
+https://sources.debian.org/patches/mtink/1.0.16-11/gcc-10/
+Author: Graham Inggs <ginggs@debian.org>
+--- a/mainSrc/mtink.h
++++ b/mainSrc/mtink.h
+@@ -133,11 +133,11 @@
+
+ #endif
+
+-wConfig_data_t firstConfig;
+-wConfig_data_t newPrinter;
++extern wConfig_data_t firstConfig;
++extern wConfig_data_t newPrinter;
+
+-wConfig_data_t exchangeCartridge;
+-wConfig_data_t alignHead;
++extern wConfig_data_t exchangeCartridge;
++extern wConfig_data_t alignHead;
+
+ #if WITH_X
+ extern Widget createNoPrinterBox(char *);
diff --git a/net-print/mtink/files/mtink-1.0.16-motif.patch b/net-print/mtink/files/mtink-1.0.16-motif.patch
new file mode 100644
index 000000000000..ac66c450b056
--- /dev/null
+++ b/net-print/mtink/files/mtink-1.0.16-motif.patch
@@ -0,0 +1,49 @@
+https://sources.debian.org/patches/mtink/1.0.16-11/lesstif-multiarch/
+--- a/Configure
++++ b/Configure
+@@ -127,6 +127,8 @@
+ /usr/openwin/lib
+ /usr/local/lib
+ /usr/dt/lib'
++LIBDIRS="$LIBDIRS `${CC-gcc} -print-search-dirs 2>/dev/null |
++ awk '/^libraries:/{print $2}' | tr ':' ' '`"
+
+ # Add gimp-2.0 for fedora core 2
+ INCLDIRS='/usr/include/gimp-2.0/libgimp
+@@ -279,11 +281,6 @@
+ exit 1
+ fi
+
+- case $OS in
+- Linux) . ./checkMotifVersion.sh;;
+- Darwin) . ./checkMotifVersion.sh;;
+- esac
+-
+ if [ "$MotifLib" != "" ]
+ then
+ mlCmd="s@^MOLIB.*@MOLIB = $MotifLib@"
+@@ -297,24 +294,6 @@
+ miCmd=
+ fi
+
+- # Check for the Xp libary, some Motif libraries need this
+-
+- xplibFound=0
+- for dir in $LIBDIRS
+- do
+- if [ "`ls -c $dir/libXp.* 2>/dev/null`" != "" ]
+- then
+- xplibFound=1
+- break
+- fi
+- done
+-
+- # but not for Solaris
+- if [ `uname` = SunOS ]
+- then
+- xplibFound=0
+- fi
+-
+ # Gimp part ################################################
+ # check for gimp
+ includeFileFound=0
diff --git a/net-print/mtink/files/mtink-1.0.16-overflow.patch b/net-print/mtink/files/mtink-1.0.16-overflow.patch
index d57e2cd0139e..b0858485293e 100644
--- a/net-print/mtink/files/mtink-1.0.16-overflow.patch
+++ b/net-print/mtink/files/mtink-1.0.16-overflow.patch
@@ -1,5 +1,5 @@
---- a/server/mtinkd.c 2012-01-15 13:03:41.000000000 +0000
-+++ b/server/mtinkd.c 2012-01-15 13:03:58.000000000 +0000
+--- a/server/mtinkd.c
++++ b/server/mtinkd.c
@@ -244,7 +244,7 @@
/* look for pid into /var/run/mtink(<fifo> */
if ( (fp = fopen(runFile,"r")) )
diff --git a/net-print/mtink/metadata.xml b/net-print/mtink/metadata.xml
index c439b06d8c84..882504794e17 100644
--- a/net-print/mtink/metadata.xml
+++ b/net-print/mtink/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>printing@gentoo.org</email>
- <name>Gentoo Printing Project</name>
-</maintainer>
+ <maintainer type="project">
+ <email>printing@gentoo.org</email>
+ <name>Gentoo Printing Project</name>
+ </maintainer>
</pkgmetadata>
diff --git a/net-print/mtink/mtink-1.0.16-r2.ebuild b/net-print/mtink/mtink-1.0.16-r2.ebuild
index 79e369b73084..4d46836b2d1f 100644
--- a/net-print/mtink/mtink-1.0.16-r2.ebuild
+++ b/net-print/mtink/mtink-1.0.16-r2.ebuild
@@ -1,30 +1,45 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
+
+inherit toolchain-funcs
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"
+HOMEPAGE="https://web.archive.org/web/20160316185818/http://xwtools.automatix.de/"
+SRC_URI="https://web.archive.org/web/20160316185818/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
+DEPEND="
+ virtual/libusb:0
+ cups? ( net-print/cups )
+ X? (
+ x11-libs/libX11
x11-libs/libXpm
x11-libs/libXt
- >=x11-libs/motif-2.3:0 )
+ x11-libs/motif:0
+ )
cups? ( net-print/cups )
virtual/libusb:0"
RDEPEND="${DEPEND}"
PATCHES=(
- "${FILESDIR}/${P}-overflow.patch"
- "${FILESDIR}/${P}-flags.patch"
+ "${FILESDIR}"/${P}-overflow.patch
+ "${FILESDIR}"/${P}-flags.patch
+ "${FILESDIR}"/${P}-motif.patch
+ "${FILESDIR}"/${P}-fno-common.patch
+ "${FILESDIR}"/${P}-fix-function-declarations.patch
)
+src_prepare() {
+ default
+ sed -i -e "s/gcc/$(tc-getCC)/g" Makefile.ORG || die
+}
+
src_configure() {
if use X ; then
./Configure || die
@@ -48,9 +63,7 @@ src_compile() {
src_install() {
dobin ttink detect/askPrinter
- if use X; then
- dobin mtinkc mtink
- fi
+ use X && dobin mtinkc mtink
dosbin mtinkd
@@ -62,9 +75,8 @@ src_install() {
doexe etc/mtink-cups
fi
- dodoc README CHANGE.LOG
- use doc && \
- dohtml html/*.gif html/*.html
+ dodoc html/README CHANGE.LOG
+ use doc && dodoc -r html/*.{gif,html}
}
pkg_postinst() {
diff --git a/net-print/npadmin/files/npadmin-0.8.7-makefile.patch b/net-print/npadmin/files/npadmin-0.8.7-makefile.patch
new file mode 100644
index 000000000000..140750a0b0b8
--- /dev/null
+++ b/net-print/npadmin/files/npadmin-0.8.7-makefile.patch
@@ -0,0 +1,43 @@
+--- a/Makefile.in 2024-03-28 13:35:04.247099098 +0000
++++ b/Makefile.in 2024-03-28 13:33:44.610623716 +0000
+@@ -104,7 +104,7 @@
+ NROFF = nroff
+ DIST_COMMON = README ./stamp-h.in AUTHORS COPYING ChangeLog INSTALL \
+ Makefile.am Makefile.in NEWS TODO acconfig.h aclocal.m4 config.h.in \
+-configure configure.in install-sh memcmp.c missing mkinstalldirs \
++configure configure.ac install-sh memcmp.c missing mkinstalldirs \
+ npadmin.spec.in snprintf.c
+
+
+@@ -118,19 +118,19 @@
+ all: all-redirect
+ .SUFFIXES:
+ .SUFFIXES: .C .S .c .o .s
+-$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
++$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.ac $(ACLOCAL_M4)
+ cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps Makefile
+
+ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ cd $(top_builddir) \
+ && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+-$(ACLOCAL_M4): configure.in
++$(ACLOCAL_M4): configure.ac
+ cd $(srcdir) && $(ACLOCAL)
+
+ config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ $(SHELL) ./config.status --recheck
+-$(srcdir)/configure: $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
++$(srcdir)/configure: $(srcdir)/configure.ac $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
+ cd $(srcdir) && $(AUTOCONF)
+
+ config.h: stamp-h
+@@ -148,7 +148,7 @@
+ rm -f $(srcdir)/stamp-h.in; \
+ $(MAKE) $(srcdir)/stamp-h.in; \
+ else :; fi
+-$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) acconfig.h
++$(srcdir)/stamp-h.in: $(top_srcdir)/configure.ac $(ACLOCAL_M4) acconfig.h
+ cd $(top_srcdir) && $(AUTOHEADER)
+ @echo timestamp > $(srcdir)/stamp-h.in 2> /dev/null
+
diff --git a/net-print/npadmin/metadata.xml b/net-print/npadmin/metadata.xml
index 81b685a0b019..a3f654a08ac7 100644
--- a/net-print/npadmin/metadata.xml
+++ b/net-print/npadmin/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>printing@gentoo.org</email>
diff --git a/net-print/npadmin/npadmin-0.8.7-r1.ebuild b/net-print/npadmin/npadmin-0.8.7-r1.ebuild
index d58da82c8b82..d07f1e1a6c63 100644
--- a/net-print/npadmin/npadmin-0.8.7-r1.ebuild
+++ b/net-print/npadmin/npadmin-0.8.7-r1.ebuild
@@ -1,12 +1,10 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
-inherit eutils
-
DESCRIPTION="Network printer command-line adminstration tool"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.gz"
HOMEPAGE="http://npadmin.sourceforge.net/"
# this does NOT link against SNMP
diff --git a/net-print/npadmin/npadmin-0.8.7-r2.ebuild b/net-print/npadmin/npadmin-0.8.7-r2.ebuild
new file mode 100644
index 000000000000..4751943a3468
--- /dev/null
+++ b/net-print/npadmin/npadmin-0.8.7-r2.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Network printer command-line administration tool"
+HOMEPAGE="https://npadmin.sourceforge.net/"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+# this does NOT link against SNMP
+# DEPEND=""
+
+PATCHES=(
+ "${FILESDIR}"/${P}-stdlib.patch
+ "${FILESDIR}"/${P}-gcc6.patch
+ "${FILESDIR}"/${P}-makefile.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+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
deleted file mode 100644
index e399adac2e17..000000000000
--- a/net-print/pkpgcounter/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pkpgcounter-3.50.tar.gz 195579 BLAKE2B b0ea8ab88da9fafdc50beb993077fc299f3fe0972d25d551ee6fc04b17b8ab3e235c25a51498319d4cf8f0c27c663f6a127d8b969878ff31988fcbbe678c0f3c SHA512 d0c597cacc6b315faf002677ff456bd3dcb4fe8337b407e027b0edb6b27fd0e23da69fed6d148d7f5e28c2b91f7207d63779307e5e284cc714954dcb7ebe6346
diff --git a/net-print/pkpgcounter/metadata.xml b/net-print/pkpgcounter/metadata.xml
deleted file mode 100644
index 99680c0f44fc..000000000000
--- a/net-print/pkpgcounter/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <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-r2.ebuild b/net-print/pkpgcounter/pkpgcounter-3.50-r2.ebuild
deleted file mode 100644
index 8f349b12d39f..000000000000
--- a/net-print/pkpgcounter/pkpgcounter-3.50-r2.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 )
-
-inherit distutils-r1
-
-DESCRIPTION="Generic PDL (Page Description Language) parser in Python"
-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="dev-python/pillow[${PYTHON_USEDEP}]"
-RDEPEND="${DEPEND}"
-
-src_install() {
- distutils-r1_src_install
-
- rm -r "${ED%/}/usr/share/doc/${PN}" || die
-}
diff --git a/net-print/pnm2ppa/files/pnm2ppa-1.13-clang16.patch b/net-print/pnm2ppa/files/pnm2ppa-1.13-clang16.patch
new file mode 100644
index 000000000000..3fabafc871e9
--- /dev/null
+++ b/net-print/pnm2ppa/files/pnm2ppa-1.13-clang16.patch
@@ -0,0 +1,7 @@
+https://bugs.gentoo.org/874534
+--- a/ppa_protocol/parse_vlink.c
++++ b/ppa_protocol/parse_vlink.c
+@@ -1,2 +1,3 @@
+ #include <stdio.h>
++#include <string.h>
+
diff --git a/net-print/pnm2ppa/files/pnm2ppa-1.13-fno-common.patch b/net-print/pnm2ppa/files/pnm2ppa-1.13-fno-common.patch
new file mode 100644
index 000000000000..e12ba7ba246d
--- /dev/null
+++ b/net-print/pnm2ppa/files/pnm2ppa-1.13-fno-common.patch
@@ -0,0 +1,26 @@
+Taken from: https://sources.debian.org/patches/pnm2ppa/1.13-10/0005-Declare-syslog_message-correctly-for-GCC-10-FTBFS.patch
+Author: Zdenek Dohnal <zdohnal@redhat.com>
+--- a/ppa_syslog.h
++++ b/ppa_syslog.h
+@@ -39,7 +39,7 @@
+ #include <syslog.h>
+ #endif
+
+-char syslog_message[128];
++extern char syslog_message[128];
+ extern size_t message_size ;
+
+ void wrap_syslog( int, char *, char *);
+diff --git a/syslog.c b/syslog.c
+index 9b11c55..dccab91 100644
+--- a/syslog.c
++++ b/syslog.c
+@@ -31,6 +31,8 @@
+ #include "ppa_syslog.h"
+ #include "global.h"
+
++char syslog_message[128];
++
+ BOOLEAN verbose = false ;
+
+ /*
diff --git a/net-print/pnm2ppa/metadata.xml b/net-print/pnm2ppa/metadata.xml
index 694dbab7c8b5..94ca5a8e1ab3 100644
--- a/net-print/pnm2ppa/metadata.xml
+++ b/net-print/pnm2ppa/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>printing@gentoo.org</email>
diff --git a/net-print/pnm2ppa/pnm2ppa-1.13-r1.ebuild b/net-print/pnm2ppa/pnm2ppa-1.13-r2.ebuild
index 55c86714e946..ac933c7f1679 100644
--- a/net-print/pnm2ppa/pnm2ppa-1.13-r1.ebuild
+++ b/net-print/pnm2ppa/pnm2ppa-1.13-r2.ebuild
@@ -1,17 +1,15 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=4
-
-inherit base
+EAPI=7
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"
+SRC_URI="https://downloads.sourceforge.net/pnm2ppa/${P}.tar.gz"
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
IUSE="syslog"
# en on first place so others can override it
@@ -25,10 +23,14 @@ RDEPEND="
net-print/cups
>=net-print/cups-filters-1.0.43-r1[foomatic]
sys-libs/glibc
- syslog? ( virtual/logger )
-"
+ syslog? ( virtual/logger )"
DEPEND="${RDEPEND}"
+PATCHES=(
+ "${FILESDIR}"/${P}-fno-common.patch
+ "${FILESDIR}"/${P}-clang16.patch
+)
+
src_configure() {
local lng i withval
@@ -65,13 +67,17 @@ src_install() {
exeinto /etc/pdq/drivers/ghostscript
doexe pdq/gs-pnm2ppa
+
exeinto /etc/pdq/interfaces
doexe pdq/dummy
# install docs
- cd docs/en
+ cd docs/en || die
dodoc CALIBRATION*txt COLOR*txt PPA*txt RELEASE* CREDITS README sgml/*.sgml
- cd "${S}"
- dohtml -r .
+ cd "${S}" || die
+ docinto html/docs/en
+ dodoc docs/en/*.html
+ docinto html/ppa_protocol
+ dodoc ppa_protocol/*.html
}
diff --git a/net-print/poster/metadata.xml b/net-print/poster/metadata.xml
index c439b06d8c84..e2fedda90ee1 100644
--- a/net-print/poster/metadata.xml
+++ b/net-print/poster/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>printing@gentoo.org</email>
diff --git a/net-print/poster/poster-20060221-r2.ebuild b/net-print/poster/poster-20060221-r2.ebuild
deleted file mode 100644
index 294fbc285b51..000000000000
--- a/net-print/poster/poster-20060221-r2.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-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="https://printing.kde.org/downloads"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-PATCHES=(
- "${FILESDIR}/${P}-fix_gs_crash.patch"
- "${FILESDIR}/${P}-fix_duplicate_DocumentMedia.patch"
-)
-
-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/poster/poster-20060221-r3.ebuild b/net-print/poster/poster-20060221-r4.ebuild
index b912c89acd95..47b567373b68 100644
--- a/net-print/poster/poster-20060221-r3.ebuild
+++ b/net-print/poster/poster-20060221-r4.ebuild
@@ -1,18 +1,17 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit toolchain-funcs
DESCRIPTION="Small utility for making a poster from an EPS file or a one-page PS document"
+HOMEPAGE="https://ctan.org/pkg/poster"
SRC_URI="mirror://kde/printing/${P}.tar.bz2"
-HOMEPAGE="https://printing.kde.org/downloads"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
+KEYWORDS="amd64 ~ppc x86"
PATCHES=(
"${FILESDIR}/${P}-fix_gs_crash.patch"
diff --git a/net-print/poster/poster-20060221.ebuild b/net-print/poster/poster-20060221.ebuild
deleted file mode 100644
index 34c1a6bc4d55..000000000000
--- a/net-print/poster/poster-20060221.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-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="https://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/splix/metadata.xml b/net-print/splix/metadata.xml
index b1ff1594956c..2ea580a8d8e2 100644
--- a/net-print/splix/metadata.xml
+++ b/net-print/splix/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>voyageur@gentoo.org</email>
@@ -13,4 +13,3 @@
<remote-id type="sourceforge">splix</remote-id>
</upstream>
</pkgmetadata>
-
diff --git a/net-print/splix/splix-2.0.0_p20130826-r1.ebuild b/net-print/splix/splix-2.0.0_p20130826-r1.ebuild
index f8278234dc38..5b17bec8db15 100644
--- a/net-print/splix/splix-2.0.0_p20130826-r1.ebuild
+++ b/net-print/splix/splix-2.0.0_p20130826-r1.ebuild
@@ -1,17 +1,17 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit eutils toolchain-funcs
+inherit toolchain-funcs
DESCRIPTION="A set of CUPS printer drivers for SPL (Samsung Printer Language) printers"
-HOMEPAGE="http://splix.sourceforge.net/"
+HOMEPAGE="https://splix.sourceforge.net/"
SRC_URI="https://dev.gentoo.org/~voyageur/distfiles/${P}.tar.bz2
https://dev.gentoo.org/~voyageur/distfiles/samsung-cms-20120312.tar.xz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 ~arm64 x86"
IUSE="+jbig"
DEPEND=">=app-text/ghostscript-gpl-9.02
diff --git a/net-print/splix/splix-2.0.0_p20130826.ebuild b/net-print/splix/splix-2.0.0_p20130826.ebuild
deleted file mode 100644
index 3ca2d9b6afb6..000000000000
--- a/net-print/splix/splix-2.0.0_p20130826.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-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="https://dev.gentoo.org/~voyageur/distfiles/${P}.tar.bz2
- https://dev.gentoo.org/~voyageur/distfiles/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/metadata.xml b/net-print/sshlpr/metadata.xml
index 6f49eba8f496..85e4ed814fa2 100644
--- a/net-print/sshlpr/metadata.xml
+++ b/net-print/sshlpr/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/net-print/sshlpr/sshlpr-1.ebuild b/net-print/sshlpr/sshlpr-1-r1.ebuild
index 1c32c9003523..99cf50d6b50f 100644
--- a/net-print/sshlpr/sshlpr-1.ebuild
+++ b/net-print/sshlpr/sshlpr-1-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -14,8 +14,8 @@ IUSE=""
DEPEND="net-print/cups"
RDEPEND="${DEPEND}
- net-misc/openssh
- sys-apps/shadow"
+ sys-apps/shadow
+ virtual/openssh"
S="${WORKDIR}"