summaryrefslogtreecommitdiff
path: root/net-print
diff options
context:
space:
mode:
Diffstat (limited to 'net-print')
-rw-r--r--net-print/Manifest.gzbin6428 -> 6424 bytes
-rw-r--r--net-print/cups-browsed/Manifest4
-rw-r--r--net-print/cups-browsed/cups-browsed-2.0.0.ebuild2
-rw-r--r--net-print/cups-browsed/cups-browsed-2.0.1.ebuild79
-rw-r--r--net-print/cups-filters/Manifest8
-rw-r--r--net-print/cups-filters/cups-filters-1.28.17-r2.ebuild2
-rw-r--r--net-print/cups-filters/cups-filters-2.0.0-r1.ebuild2
-rw-r--r--net-print/cups-filters/cups-filters-2.0.0.ebuild2
-rw-r--r--net-print/cups-filters/cups-filters-2.0.1.ebuild2
-rw-r--r--net-print/cups-meta/Manifest2
-rw-r--r--net-print/cups-meta/cups-meta-1.ebuild2
-rw-r--r--net-print/cups-pk-helper/Manifest2
-rw-r--r--net-print/cups-pk-helper/cups-pk-helper-0.2.7-r1.ebuild2
-rw-r--r--net-print/cups-windows/Manifest2
-rw-r--r--net-print/cups-windows/cups-windows-6.0-r1.ebuild2
-rw-r--r--net-print/cups/Manifest14
-rw-r--r--net-print/cups/cups-2.4.10-r1.ebuild322
-rw-r--r--net-print/cups/cups-2.4.10.ebuild2
-rw-r--r--net-print/cups/cups-2.4.11.ebuild320
-rw-r--r--net-print/cups/cups-2.4.6.ebuild2
-rw-r--r--net-print/cups/cups-2.4.7-r1.ebuild2
-rw-r--r--net-print/cups/cups-2.4.7-r2.ebuild2
-rw-r--r--net-print/cups/cups-9999.ebuild2
-rw-r--r--net-print/epson-inkjet-printer-escpr/Manifest7
-rw-r--r--net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.2.15.ebuild2
-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.8.6.ebuild51
-rw-r--r--net-print/epson-inkjet-printer-escpr/files/1.8.6-warnings.patch53
-rw-r--r--net-print/foomatic-db-engine/Manifest2
-rw-r--r--net-print/foomatic-db-engine/foomatic-db-engine-4.0.12-r1.ebuild2
-rw-r--r--net-print/foomatic-db-ppds/Manifest2
-rw-r--r--net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20190226-r1.ebuild2
-rw-r--r--net-print/foomatic-db/Manifest2
-rw-r--r--net-print/foomatic-db/foomatic-db-4.0.20190226-r1.ebuild2
-rw-r--r--net-print/gutenprint/Manifest2
-rw-r--r--net-print/gutenprint/gutenprint-5.3.4-r2.ebuild2
-rw-r--r--net-print/hplip-plugin/Manifest4
-rw-r--r--net-print/hplip-plugin/hplip-plugin-3.23.12.ebuild71
-rw-r--r--net-print/hplip-plugin/hplip-plugin-3.24.4.ebuild2
-rw-r--r--net-print/hplip/Manifest7
-rw-r--r--net-print/hplip/hplip-3.23.12-r1.ebuild296
-rw-r--r--net-print/hplip/hplip-3.23.12-r3.ebuild296
-rw-r--r--net-print/hplip/hplip-3.24.4.ebuild2
-rw-r--r--net-print/libcupsfilters/Manifest9
-rw-r--r--net-print/libcupsfilters/files/libcupsfilters-2.1_beta1-CVE-2024-47076.patch31
-rw-r--r--net-print/libcupsfilters/libcupsfilters-2.0.0-r3.ebuild2
-rw-r--r--net-print/libcupsfilters/libcupsfilters-2.0.0-r5.ebuild2
-rw-r--r--net-print/libcupsfilters/libcupsfilters-2.1.0.ebuild71
-rw-r--r--net-print/libcupsfilters/libcupsfilters-2.1_beta1.ebuild75
-rw-r--r--net-print/libppd/Manifest8
-rw-r--r--net-print/libppd/files/libppd-2.1_beta1-CVE-2024-47175.patch560
-rw-r--r--net-print/libppd/libppd-2.0.0.ebuild2
-rw-r--r--net-print/libppd/libppd-2.1.0.ebuild61
-rw-r--r--net-print/libppd/libppd-2.1_beta1-r1.ebuild65
-rw-r--r--net-print/libppd/libppd-2.1_beta1.ebuild61
55 files changed, 1815 insertions, 754 deletions
diff --git a/net-print/Manifest.gz b/net-print/Manifest.gz
index 671dd0484723..e889b5fd0a05 100644
--- a/net-print/Manifest.gz
+++ b/net-print/Manifest.gz
Binary files differ
diff --git a/net-print/cups-browsed/Manifest b/net-print/cups-browsed/Manifest
index 6c6caec45546..dd4abd74122a 100644
--- a/net-print/cups-browsed/Manifest
+++ b/net-print/cups-browsed/Manifest
@@ -1,5 +1,7 @@
AUX 0001-cups-browsed.c-Fix-build-with-avahi-disabled-20.patch 915 BLAKE2B 2349ba5021b42ab896cf277c64052c1e593fe3e6ec0665ab20476aaede23290f83d6ec58e8ed8402c29f9cece0fd7c79c294512410213fe731455c1b76337592 SHA512 2c5f75b748477cd19711c7ab2c6b158de94cc14ee4e0344e303b1e7f2e3c07ee0b3c04d110896d8db9d94486a9d80c0643e79a70fe6b1d1e27c7b0d910628be7
AUX cups-browsed.init.d 150 BLAKE2B c2098766ae08b38dead0a5bab2e30e1728ab93aa98e74edb6e20f8a885b62189f1368a041c4430ad24a1b92f0ae9cb317ac3390767db0a54ca1532022d44b0bd SHA512 c8a74ad0e5cfd3b565c12eeca50a55b7a6aa3ac92c689fc6632e2a6df5033e6fa7f16ce6c9c2cbf607ad4bd09453ab7d47448cdd04ad8c7e35f0e584b6d96d38
DIST cups-browsed-2.0.0.tar.xz 426132 BLAKE2B e1724c03302d61cf131c8886a95f6ad8f0236b134f1deaadb783fa185141b83cd8ac5c5d993ded37d04c7fd806c5cde157a792a90a2f372075f24a5bd2423dc5 SHA512 592493ef82c65b2418b86b555c4d24bdf352f78516993a021d106240b8c399fd9f4fcc27e396e895d94da889a97f2bbc5e96bfa92c58c8be80802ee8df43db80
-EBUILD cups-browsed-2.0.0.ebuild 2222 BLAKE2B 285eda5cff587627ac26584a74144c21d1c3f664a6a4fae380c0885a36c960ea0c46aa9878fca15d42e5a852695edd699383ca36efd957764db3d68b37ed9d06 SHA512 d7161ac6b61cfbf30b4ded6517860c4104bc4ac51c978ceb774e8324ec1b3b9674fced217ffebd3eb754ddd9c788af6cd8885ffbbc48b38cd1deb824fe75d0f4
+DIST cups-browsed-2.0.1.tar.xz 427060 BLAKE2B 06c9c8f8c50a165b11f029804dbb20db0ebfd7cddc93c274851e1ab849d0a200fcb8e7dfc489656fa1255c7d6540ae5407467161bd51edca3e8ce04e7d02b78f SHA512 9e9a11708daa861ef58b19a3bda636f1e1fccf0cf12ad5880096d61132f1df9bfa8b81f437247064d199e3aa6a5438061ba085a6d6df52c1ba6021f3b32d9d00
+EBUILD cups-browsed-2.0.0.ebuild 2216 BLAKE2B b679fb64054028c3ba94be410c11b05ff1587a037200313af490779a4339540458dcd73fdd191dfb6680359692e241e1ab13a8fb8aa576dbe07e302d2ca80181 SHA512 f94c6b5b30a3a5410d6e5a5b69b15af53c871a0370c3a00b93fa6ff49810614609c5da8e59462e915346d4a7c04bb4a54fdb8232c241b864d72fa680a50031cc
+EBUILD cups-browsed-2.0.1.ebuild 2188 BLAKE2B 8e2f6ad79a5daa424920bafd841a53122781c1296be2486f32eceb5f4b43670809c6c551f125634a7c0fd36219ba7b3bd9c2a92a7f42b8f7955632f1cb93a72f SHA512 2d66cdabc476a75e6d89a3d3b0906a4d6915be1b4c9b8356657b23fcb6b14e086cf0a17a322aff5ab0c33eff9501bab60cb67c422b24e2062c93632a243e56e0
MISC metadata.xml 350 BLAKE2B d469f8a462c27bb1f22454a0141a67a6ac9c4c06058bf50576fd4d8324371042805464135777838a7ee787185c0f37e2ab06de00db9645b5737dcada51464f22 SHA512 53832a79e75d4ffb1896d3a984709cd06294b82ed7a0cab9a2c958a8fabf7d2d4252f09b4302336a42dbd3afd079b1688b86d04e63efbca5ee5065ac56c793ce
diff --git a/net-print/cups-browsed/cups-browsed-2.0.0.ebuild b/net-print/cups-browsed/cups-browsed-2.0.0.ebuild
index 20aedcf5cb6b..d888228930f5 100644
--- a/net-print/cups-browsed/cups-browsed-2.0.0.ebuild
+++ b/net-print/cups-browsed/cups-browsed-2.0.0.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://github.com/OpenPrinting/cups-browsed/releases/download/${PV}/${
LICENSE="Apache-2.0"
SLOT="0"
IUSE="ldap test zeroconf"
-KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv sparc x86"
RDEPEND="
dev-libs/glib:2
diff --git a/net-print/cups-browsed/cups-browsed-2.0.1.ebuild b/net-print/cups-browsed/cups-browsed-2.0.1.ebuild
new file mode 100644
index 000000000000..1b600d43be39
--- /dev/null
+++ b/net-print/cups-browsed/cups-browsed-2.0.1.ebuild
@@ -0,0 +1,79 @@
+# 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"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~sparc x86"
+IUSE="ldap test zeroconf"
+
+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"
+
+src_configure() {
+ local myeconfargs=(
+ --localstatedir="${EPREFIX}"/var
+ # Omit cups here for bug #940311 (CVE-2024-47176 mitigation)
+ --with-browseremoteprotocols=dnssd
+ --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-filters/Manifest b/net-print/cups-filters/Manifest
index 91555798ea2e..dfe960e946f0 100644
--- a/net-print/cups-filters/Manifest
+++ b/net-print/cups-filters/Manifest
@@ -4,8 +4,8 @@ AUX cups-filters-1.28.17-c++17.patch 1066 BLAKE2B 149001a37c5799210a7cbc6c79ab1b
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
DIST cups-filters-2.0.1.tar.xz 447288 BLAKE2B 5bab10e10890332e873944f42cf53f00055a74898cd8139c3e3ee98f76f369f68c2a6c70f336167dbc43a48d92c3030e29cdfb30864bc52cdc5eb5e7b5158e7a SHA512 e80783a03722228fdd67ab5041082d1c2ad9c5c5d59a60ac1aee51a4600b2e9c0c90b78f6fdbc2c7928c2bf2bb634df7c1ec5db23de65e867a0498372f7a2c00
-EBUILD cups-filters-1.28.17-r2.ebuild 3679 BLAKE2B 6f49716b9a904f063cf4356d856a87af14ce1d8536ff87aa92fe025f2df53d863373b8268524143500a17993b6dc98ede742c85a8ea931d279402e4dc70d5c36 SHA512 0e5d1a2d6c63ae020cab8f598d9b06e72712b95af8f3daf0b8a6eccbce311d89596e57ebcfa19dc9fcbc55c20714f22792ae84d29d1decdc07d20f1e7a03d1a3
-EBUILD cups-filters-2.0.0-r1.ebuild 1564 BLAKE2B 1fb79205df28eaf9c0143c5445177e1adc06f7497914aa9e8f1cde310e39d444b7d5e18bb57826edf9ab852aab65c3e2d54f6b82c38689629c0f37433894252e SHA512 95790f607f4c2a25972eec786de21d0eae74af7259319206e150d140100e1a8df5a83d9f222579b16ef2c561a8a4e68f627fd2b097573c92c66141ed701cd022
-EBUILD cups-filters-2.0.0.ebuild 1422 BLAKE2B c85fcc33008f41ad75c2b8c25e5ed6671d18a3e6049afe410becf97c0f2821f8984fb78dbe301552b2972534af92cf6de1dddf381d3a241d5cd8f1edc6e5c8d8 SHA512 e997a777141dd75987c9f5b6a405076bb791d8e581471668a6a7719cc739d38388866bde5299f728174047fe4ee00c32e371b3094ed829f8599e73b2650a347f
-EBUILD cups-filters-2.0.1.ebuild 1278 BLAKE2B bc7f953ae9c4784cfa90af33abd33b60b75d452478dcf6dbfc03446a7d8d35e298530fecb1f2fc76085d0f6163a12be7e72515146fecfed2a9eaefa7f66d85db SHA512 fc873fc95261cb95b18a47d3f6199917cd791a9f487db17e4fe3f5c8e4ceb35eb1334bc024eb1a9f8092ab1b760edb5accecec482eee01e2a2c7da9477d7cdb6
+EBUILD cups-filters-1.28.17-r2.ebuild 3673 BLAKE2B 93e2caab2e4e59ecf804cf61992058a55cc821fcda7b317765b6b6ef2614024bd2cc79c2d779a051a2e374cb9208042a7e149e99a71bbeca128e833b74f164b5 SHA512 5128ab15683c391047eb555e881fb94ec1b0cef7bb0e38d172c8220da30245ab2b2b3b3ba308d99a39328f41c41e9f3b4735f4636d91c3c5d121ef93a6119ec1
+EBUILD cups-filters-2.0.0-r1.ebuild 1558 BLAKE2B fe1467e1e52f23af3adbd9a378ca57894ec378aed6b6000c41e506ae4016e6f1975cf65ba0431499d0ae41611dc326d95d3f272186bf51f742c35c86948dbcb6 SHA512 3e9a6e4aabcf5d68a952db55e2ff01a953fe10080cd8186b6da2f3641bc99913d900c345161891dd8abf7cedecb086a9d3b763ed51d96f6fd5c0768b98cfc5d6
+EBUILD cups-filters-2.0.0.ebuild 1416 BLAKE2B ed29e65c4783917db124726648a9b54fc7fa4dee701c95348691fe56f462fe1a08c5e73c0e69b0285f57b46e761632bee7cda33f3a0f2a41e2d1ebac5ed3e519 SHA512 48009cc8a05ad407423f49e64eac1178de8472285b5490579922da2c7ae9642d68ef366cb288171b2ed35e5936ff6284fe753a7e153729891fd6ca19cca1752b
+EBUILD cups-filters-2.0.1.ebuild 1266 BLAKE2B dbb6810ed663dde495415ee746e0266cce6e18e4331b170b0e84cabde365125893b63bfe9324e5122ab3f7c9cc412f4847636fe4635d6734380d03905393c867 SHA512 85fd1b9ea586f20c508c520ad2f7774744b1b3b8fdbb1a8a79ef3bacb50b95753fd0fa9b64589f5ffa9fd9ede39fd5c1a1cac98f8250a6e0ac2f0b57ff790431
MISC metadata.xml 585 BLAKE2B c3ae887bff09343b882156b9020c185a9bd0d7bfabee240c71d714b8811761ef23176e4ee71f731022103a3da2255e1683b7ac4aca0f677afd994de5bedc96ca SHA512 313722d8912f26c1a7754a837b1d64dd122ac005cd9bb644ae65cac7b7a442845b25befa7891669abbf43011e9958988a6ad084dfa6ed393decbd198e852b196
diff --git a/net-print/cups-filters/cups-filters-1.28.17-r2.ebuild b/net-print/cups-filters/cups-filters-1.28.17-r2.ebuild
index 3198dc53fecc..75575112b866 100644
--- a/net-print/cups-filters/cups-filters-1.28.17-r2.ebuild
+++ b/net-print/cups-filters/cups-filters-1.28.17-r2.ebuild
@@ -16,7 +16,7 @@ SRC_URI="
LICENSE="MIT GPL-2"
SLOT="0"
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"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
RESTRICT="!test? ( test )"
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
index f078ad85f487..ccc02d240cd0 100644
--- a/net-print/cups-filters/cups-filters-2.0.0-r1.ebuild
+++ b/net-print/cups-filters/cups-filters-2.0.0-r1.ebuild
@@ -9,7 +9,7 @@ SRC_URI="https://github.com/OpenPrinting/cups-filters/releases/download/${PV}/${
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
+KEYWORDS="amd64 arm arm64 hppa ~loong ppc ppc64 ~riscv sparc x86"
IUSE="+foomatic"
RDEPEND="
diff --git a/net-print/cups-filters/cups-filters-2.0.0.ebuild b/net-print/cups-filters/cups-filters-2.0.0.ebuild
index 5e666fbd621b..c4e559f32d68 100644
--- a/net-print/cups-filters/cups-filters-2.0.0.ebuild
+++ b/net-print/cups-filters/cups-filters-2.0.0.ebuild
@@ -11,7 +11,7 @@ LICENSE="Apache-2.0"
SLOT="0"
IUSE="+foomatic"
#IUSE=""
-KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv sparc x86"
RDEPEND="
net-print/libcupsfilters
diff --git a/net-print/cups-filters/cups-filters-2.0.1.ebuild b/net-print/cups-filters/cups-filters-2.0.1.ebuild
index 2d11adb47728..be8a61b9a7a6 100644
--- a/net-print/cups-filters/cups-filters-2.0.1.ebuild
+++ b/net-print/cups-filters/cups-filters-2.0.1.ebuild
@@ -9,7 +9,7 @@ SRC_URI="https://github.com/OpenPrinting/cups-filters/releases/download/${PV}/${
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~sparc x86"
IUSE="+foomatic"
RDEPEND="
diff --git a/net-print/cups-meta/Manifest b/net-print/cups-meta/Manifest
index 80159eed6cd5..9f5cb836bbb5 100644
--- a/net-print/cups-meta/Manifest
+++ b/net-print/cups-meta/Manifest
@@ -1,2 +1,2 @@
-EBUILD cups-meta-1.ebuild 672 BLAKE2B ec49a20e9fb6d5c020bb581c829eb9133ea14f33a9010f9e637262ae4a80ff453d89786180d92ecfd3f3ae8f1987e0022a51778f456c10a0d645dec2671f3907 SHA512 0e9524d677cf82e96058573b87db042bb9d58f8076336c78f2c2eb7babfb0283da4f8a7bd374afa8120e3b604c43317e086f3bfc82e5be384ca48973a4606a1b
+EBUILD cups-meta-1.ebuild 666 BLAKE2B 17ce234763fbe473bdcf7d6cccce701cbd2902ccc7ec7f5040da045ca52d404d3be0ef42f86102b901f5cc174571ac6df0342dbcf9d92082369fa1c77ff44570 SHA512 9a1fca6ec70faa706fa5db10054333bea925401468dee85437a60558b7ec0113d123a13eec4caafaa87a14804de9413a1afec26c98ce96dfae6fd0c0f048afd7
MISC metadata.xml 571 BLAKE2B a4a8482afa7c787f26b83743d67acce88f9315cd0ca8b58e5516c459bdacd619fa1ec80cd7da0750401ee3d75f6e7b06807c19a977aa91287934212b876ae8e9 SHA512 ba1c34a1acffbf35e404a14bfc4a83b2c48de274119cb5800920f7511ff054759d954f6fe8254de0c144fb28f7c69abf0e00c334b1407883e787ab338e005f26
diff --git a/net-print/cups-meta/cups-meta-1.ebuild b/net-print/cups-meta/cups-meta-1.ebuild
index 26e16556b814..7d88029f8ce8 100644
--- a/net-print/cups-meta/cups-meta-1.ebuild
+++ b/net-print/cups-meta/cups-meta-1.ebuild
@@ -9,7 +9,7 @@ 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"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv sparc x86"
RDEPEND="
net-print/cups[zeroconf?]
diff --git a/net-print/cups-pk-helper/Manifest b/net-print/cups-pk-helper/Manifest
index 79ebeb4d87b8..8d09787f66e0 100644
--- a/net-print/cups-pk-helper/Manifest
+++ b/net-print/cups-pk-helper/Manifest
@@ -1,3 +1,3 @@
DIST cups-pk-helper-0.2.7.tar.xz 54500 BLAKE2B e9107c18396e87bc8e385a32d00ac6d15bfcc6f53e9c04514bbc9e7bee6b4a87ba16b97da321c72fb01fa273a0fdcb396a0eed335e9e37eb98d7a299ec480ca1 SHA512 8f1d5dce73a52552d00eb3f54b39e03ca7ae711a0591572a25bd8926e228457628f1ee7e6ae89bda1b0ef473f860ad85bff9036ca1bc244d2cbda530bab96d40
-EBUILD cups-pk-helper-0.2.7-r1.ebuild 787 BLAKE2B 224daeb4d939eddcade3492af6d2da0784094ce9fec9e90620d76a7713beb9a5d4110eabfd247921f0821f408a7a2c4ef1fd4e1326aadb2423b813b83d289d81 SHA512 23f1d1231e3b06decc28705473e530d8c818e5002741311e1b1a7b94ac11d22a6347b15e0e3b4b8b4e312f42f977c408ab3b70884cceeac06ac482e4a1c96e88
+EBUILD cups-pk-helper-0.2.7-r1.ebuild 781 BLAKE2B 552e993b32ff831a0ffed3bd7a36269a797097e0102075508627e0bc40af02c0f70b1fa9f930b4cb142fc151fd4c06bfa0e0a1df83cc10aa99e7ae8d1d99fbc1 SHA512 b49dbb282b3b8a8e9fd37a39b40bb3f4c9e7755c0492c7b35b45044ac02e77ced233b58aeed9bf15404bbf58d3d5f1f4d904ae39fe5a4beb18762078dd73b03b
MISC metadata.xml 370 BLAKE2B 1914b6be4d0815b599dbe5530505c255c0c4cb36d72c72aad247dcf3c86eaf288e97f08ee97615154fa851be96d2b2ef251a4397ef6fe9d9ab984b8d2ec1cb60 SHA512 3328ea2af6adba62d7499a686dccbe273064a8faff026dcf821a1b11e64ee92fbddff3d4806fdce2df0c41cf7c0712e4e1406dd76308e55dd1222ef7b5ea767c
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
index 52b9222c776c..ec08f4792930 100644
--- 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
@@ -11,7 +11,7 @@ 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"
+KEYWORDS="~alpha amd64 ~arm arm64 ~loong ppc ppc64 ~riscv ~sparc x86"
RESTRICT="test" # bug #864949
DEPEND="
diff --git a/net-print/cups-windows/Manifest b/net-print/cups-windows/Manifest
index 7f3a8b34cbb8..da5d5386ad8e 100644
--- a/net-print/cups-windows/Manifest
+++ b/net-print/cups-windows/Manifest
@@ -1,3 +1,3 @@
DIST cups-windows-6.0-source.tar.bz2 38284 BLAKE2B 67722a99dc906ac9c39ba9a93b7fbbb24a44b7400de6209ac5d0ddedc4f891b48ad0284d6cfa8336400697af6eaa006e79349931cefe55cf72b428546c6ff43e SHA512 03bd66d210ee191d25139d9e462543a01d30e8a0dc797a9ee62673e84cfa9d057cc6d327792c74941a17e5021a7ffe52c40bcb52a3f3f4186f59f04796c809df
-EBUILD cups-windows-6.0-r1.ebuild 562 BLAKE2B 5336e31814c9d0fb48015be7a2d510599e93f16cc4b601132d99cf505f6605ab3fbb272ecbe86ecbdad23a9f96b1e556e9c6f94022f5ffc3d3216bf00fb4d9aa SHA512 3eda7bed374eb608a09036e863dc9af1fa6e106e2c0752c57637e9a3fa8b13d1f7573088d190a5428e410120e41754c12e72ef27d2ca69e8575abc237fc25db5
+EBUILD cups-windows-6.0-r1.ebuild 556 BLAKE2B 9b4980226b9a40d48d150876a56b8d1d19afd1d43117e541d53b2ab24cb8e2c8533a7874e2ef0a3c24d57daf96f19483af7b3b2cab785f6983105258d1a5a232 SHA512 cda46b5a3d658a8603e63cf4ebeb08ff059f52f2d40d36b0ead859cfdee69ae88ce42b26f488ff33981f9366eda580223c997df242114a9786b0dc9a99bb7e29
MISC metadata.xml 256 BLAKE2B 16ea76357721c3ab7d672ade29d27338ddf9da983571e4ca4efe2520c741fc71315d9609b711850b00c19ed4eea848dea0d5b3955eecb401c42c4db257c300bf SHA512 2748afab7ffea0b3ddadf72dc720f7d83a1d76453fa569091abffe834ec187144a47f9365ccb4a97f676dbcfd799a6be92671f283b179fe4589d95486d7fd24d
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 d1f32d6457db..242f1ca8be67 100644
--- a/net-print/cups-windows/cups-windows-6.0-r1.ebuild
+++ b/net-print/cups-windows/cups-windows-6.0-r1.ebuild
@@ -9,7 +9,7 @@ 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"
+KEYWORDS="~alpha amd64 arm ~hppa ~m68k ~mips ppc ppc64 ~s390 sparc x86"
RDEPEND=">=net-print/cups-1.2"
DEPEND="${RDEPEND}"
diff --git a/net-print/cups/Manifest b/net-print/cups/Manifest
index 4a38097a24a2..a4faf706af14 100644
--- a/net-print/cups/Manifest
+++ b/net-print/cups/Manifest
@@ -1,12 +1,16 @@
AUX cups-2.4.1-nostrip.patch 411 BLAKE2B 67b7ebe76e3586ef819a0dfee5729781ee6d5ece9ea3ff2e6805ed5bffd7cdaac039e62bbb0c47ef663fae46ae42041e025ada586f978301077124ff0ce85712 SHA512 6e792b90dbba541142f505563d37f5a567ef8469e298e2b373a9ac1900b31ffde3050b995d16fcbbeed792252b933e75c7517419a5907f9ce69e22e9c5656ff0
AUX cups-2.4.1-user-AR.patch 567 BLAKE2B 06e91a7601ebbe534808b310e80d482b0dc0b3df0d2c738979fc0917a6c497341dbb0c5f12eedc19b58a149546bab26c13324bc4d1916966d9628413a18d065f SHA512 136871e48c19be011e368dc004c39d104405a2f6729b7612c3c6355d6e1bb8dc112909c850cb58bffcbcf1efe0d4b1c3cfa3083bb63dbfc512dc93a2d0379a9e
AUX cupsd.init.d-r4 577 BLAKE2B 48508b10a13ee73e905b3d061275f5cb12ebdc2175ce46affb2007d4a5d007719a147f490e7c17a3e9a5211b82d9b89be7111921b1c9d991a6fc4c457f63eae0 SHA512 23ec5714764f2bac4105130efe6f79a508a352ecb45ab3f6e08042b156af05065330b2ac85615d0ce792a4dcd8f5230302dba9d1a96fca84c11d8bf2573ccc0e
+DIST cups-2.4.10-patches.tar.xz 6004 BLAKE2B d20d3ff9c4446e05546e531aa4806b29216555b8210071b9241340f772a2923a5441f8601f1fd87c8bb17d9dd534b0f996f88c0a9bf901849534842423cfc426 SHA512 e5051c28e18b0081acd57a99930ec3e36a657cc5a60156ce2248696eb7c0fbe14dd3740019decb5a0ca777f151f7ea0c05befe97e404df10cdb57b02be716f29
DIST cups-2.4.10-source.tar.gz 8145236 BLAKE2B 842a713d606c1e68d5113c0fc2f063cb58519891bb8f442fd64caeebf6b14fbf38b59d1fe4277cf8f9a01238c4c040fc7919234afa56dc86fcebb623a0058322 SHA512 6442207615f79c91de134ff5f438aa5060cbdf764113f7a338a53f7e12ad87bab147ea61302e84c94f259d31950f1a164c4574d11942ca838eb924827375748e
+DIST cups-2.4.11-source.tar.gz 8147763 BLAKE2B 23641a406da2496b8048894b362b9502b669efa6df326a30cbb11d8fba1f012f61cbe36eacc3102841331c0bb8f5895d22b37ad70b319ce3ee3af94cbde05c9d SHA512 5868f069cb5eaa5c74e703ed7773914376fb819ebabd7881df8726092eab390c8a1db75c4d08377a836a87807765ad2c16a15b406ab0580fdda2b176e2da3162
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
-EBUILD cups-2.4.10.ebuild 9645 BLAKE2B fafb22d0a346293ecb2fc3be493ef4dd5f2259eac977458b92cf355fc98670284fac0e3bfe5bddd4810901e37cda46964c3e4538fc0c4a8cfd341b2191997ad0 SHA512 8fad49ff09dec34200bbac25865f8b2a8a2c57c2e774ac898bd8c2675f26a4f3690f8f3191723bdfcf2a69faa7117b21f5bb51d032a020f5629bc124d4f9981f
-EBUILD cups-2.4.6.ebuild 9552 BLAKE2B 04227d32d232dabbf378d9dd4c254b04bf582e41c569295c50db2990b23f14824287c5158f792da2b9a64d146883b5c8b096f7fc55f88ffdc3b1288293def759 SHA512 4d8e8028a98f338d6775ee3ca07490efdfcd5f9ac9ca4a6fa59405045e25e2280598bab302b6d2cbc6c69878253cba035dbcee8a6f09c6c989ffc62d78408406
-EBUILD cups-2.4.7-r1.ebuild 9467 BLAKE2B f4d2c631a5c5af07ea5cbf525cf80353d60f46b37273f9b4a58def9a26cd3de5f733a87f4108b513be5a20cb1a33add83d428e9c35fd5a5c175e15e45052bfa6 SHA512 d0ddd06b8d121533025e5c74124fab77240e820e79ed189200e20f3faa60c1cf8ca3b29453cf74e733da673206fb5855a926e0bcb50f27269395a349a0f906dd
-EBUILD cups-2.4.7-r2.ebuild 9638 BLAKE2B 6f1ba280050a738e9c7505bb9b03281100fe2aadfd59509977d9f7437f013613781d8f1a2fe4da5387c1bb228d341c187ee08aa6a8c9fe04f6b45ec15122a36d SHA512 5406ebc558a59f978d33f28fc9ad59d564fb66d9b2e43f651fb19058a71e5801a738f0390d2061fe6c29bd452f9348f43bd9d35cb11239209c2ddd13538bb920
-EBUILD cups-9999.ebuild 9645 BLAKE2B fafb22d0a346293ecb2fc3be493ef4dd5f2259eac977458b92cf355fc98670284fac0e3bfe5bddd4810901e37cda46964c3e4538fc0c4a8cfd341b2191997ad0 SHA512 8fad49ff09dec34200bbac25865f8b2a8a2c57c2e774ac898bd8c2675f26a4f3690f8f3191723bdfcf2a69faa7117b21f5bb51d032a020f5629bc124d4f9981f
+EBUILD cups-2.4.10-r1.ebuild 9749 BLAKE2B 499d7f555ac2576e558837a5ee94814473dfd0c8c4a49e060c681d49f309619b165406a4056fbf570015de664787efe82af390d9c131032d9d808fb3b4c3c451 SHA512 43c32e946c07d8a668b79aab11d0fe6df31ac3db4ebc65e605db115893ecf1871e01606804b97a7f352c7b3608b3e4bb8c7dd60de043bd66aa86ee9f917fc5d8
+EBUILD cups-2.4.10.ebuild 9639 BLAKE2B b0dfae3c38aa0196891318f4c87bf96c4a14700d52240270176db7c0ef251afc396f118c826bd35c52fa127ce10a4ac6f7fbc2bec9cce8c256f9670a4089d48e SHA512 29df0de683db650619afeef406f26ce96ec853433e06837e10f04781732b25562e63d21500111a3428084c9f071cbab70bcd071be6e87a2214395532b58068c8
+EBUILD cups-2.4.11.ebuild 9632 BLAKE2B b51e3873d139f01e68bbaf666e92e25ef621feb366ee7a4295648f24c29f5210fb4289b9675645a16d0f80d3624421accf06436fb197bd02d7deea95e3214f52 SHA512 ef9b5079b1e0cb0f2a8cab0f361981e1c87d087c189032b870e7272bc3530677fb53e0b6e0a8adfebcc8f48c267dbe3ec73c5690faae8cc75332ca84fcd6a236
+EBUILD cups-2.4.6.ebuild 9546 BLAKE2B d7706335f4b5f7d2c83067f3451a6ec8c2c19798fabc36e9a13b8ae307ae96b65f700cb8cd08cac1f93b4c834b60c43f39fe1184651360e53041b8642e06e38c SHA512 17737077831162beb5681b33c511405d5fe8fef0c90227847169695f64a3e38e8513f1b076d9f86a34c4c75796c42b2aacd589feb32ab4e2cbc590ee78ce4b54
+EBUILD cups-2.4.7-r1.ebuild 9461 BLAKE2B 025635024f9a3fe9ce89130296106d1d18668eb5614be97b3d4ca7dfdc55a2e73dc4b067c576c67015cc97641dc7a76b06f1a3e37c3ee6936357b2a752711627 SHA512 da1ccc462abcc582eeff2fbd8eeb0d9f6cf8b6dd62848c0079937ae409e1385719b23452ebdb200a96505ecc0bb4b117d13d7ce6075f98c25bd6154d8fd4dae7
+EBUILD cups-2.4.7-r2.ebuild 9632 BLAKE2B b51e3873d139f01e68bbaf666e92e25ef621feb366ee7a4295648f24c29f5210fb4289b9675645a16d0f80d3624421accf06436fb197bd02d7deea95e3214f52 SHA512 ef9b5079b1e0cb0f2a8cab0f361981e1c87d087c189032b870e7272bc3530677fb53e0b6e0a8adfebcc8f48c267dbe3ec73c5690faae8cc75332ca84fcd6a236
+EBUILD cups-9999.ebuild 9639 BLAKE2B b0dfae3c38aa0196891318f4c87bf96c4a14700d52240270176db7c0ef251afc396f118c826bd35c52fa127ce10a4ac6f7fbc2bec9cce8c256f9670a4089d48e SHA512 29df0de683db650619afeef406f26ce96ec853433e06837e10f04781732b25562e63d21500111a3428084c9f071cbab70bcd071be6e87a2214395532b58068c8
MISC metadata.xml 527 BLAKE2B 04a32175e666165226eaa97785a6b9e4b779644e352c503a4653870631f28089dddbaaa3db3143f09a1d97c7f57952e4d760d64005eafacb379c23035fe9ad19 SHA512 136c81a99b501ffcedfd71f4425ba556292b79abc0ac819d336d2c845401775955b8cd72e6194f02f4c48d0cd26bc93ee7c94c7438228b49410daca80a159523
diff --git a/net-print/cups/cups-2.4.10-r1.ebuild b/net-print/cups/cups-2.4.10-r1.ebuild
new file mode 100644
index 000000000000..854f76151bad
--- /dev/null
+++ b/net-print/cups/cups-2.4.10-r1.ebuild
@@ -0,0 +1,322 @@
+# 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"
+ SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-patches.tar.xz"
+ if [[ ${PV} != *_beta* && ${PV} != *_rc* ]] ; then
+ KEYWORDS="amd64 arm arm64 ~hppa ~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"
+ "${WORKDIR}/${P}-patches"
+)
+
+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() {
+ # We only build some of CUPS for multilib, so can't run the tests.
+ if multilib_is_native_abi; then
+ # Avoid using /tmp
+ export CUPS_TESTBASE="${T}"/cups-tests
+
+ mkdir "${T}"/cups-tests || die
+
+ # 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-2.4.10.ebuild b/net-print/cups/cups-2.4.10.ebuild
index 561c0c7527d4..4e72b3e88b7a 100644
--- a/net-print/cups/cups-2.4.10.ebuild
+++ b/net-print/cups/cups-2.4.10.ebuild
@@ -17,7 +17,7 @@ if [[ ${PV} == *9999 ]] ; then
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"
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
fi
fi
diff --git a/net-print/cups/cups-2.4.11.ebuild b/net-print/cups/cups-2.4.11.ebuild
new file mode 100644
index 000000000000..8198b1c85935
--- /dev/null
+++ b/net-print/cups/cups-2.4.11.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 ~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() {
+ # We only build some of CUPS for multilib, so can't run the tests.
+ if multilib_is_native_abi; then
+ # Avoid using /tmp
+ export CUPS_TESTBASE="${T}"/cups-tests
+
+ mkdir "${T}"/cups-tests || die
+
+ # 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-2.4.6.ebuild b/net-print/cups/cups-2.4.6.ebuild
index 0419f6602052..c66753ad9d27 100644
--- a/net-print/cups/cups-2.4.6.ebuild
+++ b/net-print/cups/cups-2.4.6.ebuild
@@ -17,7 +17,7 @@ if [[ ${PV} == *9999 ]] ; then
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="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
fi
diff --git a/net-print/cups/cups-2.4.7-r1.ebuild b/net-print/cups/cups-2.4.7-r1.ebuild
index 1dbd7ec1b326..a6884fbdd04e 100644
--- a/net-print/cups/cups-2.4.7-r1.ebuild
+++ b/net-print/cups/cups-2.4.7-r1.ebuild
@@ -17,7 +17,7 @@ if [[ ${PV} == *9999 ]] ; then
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="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
fi
diff --git a/net-print/cups/cups-2.4.7-r2.ebuild b/net-print/cups/cups-2.4.7-r2.ebuild
index 0da25c8b8850..8198b1c85935 100644
--- a/net-print/cups/cups-2.4.7-r2.ebuild
+++ b/net-print/cups/cups-2.4.7-r2.ebuild
@@ -17,7 +17,7 @@ if [[ ${PV} == *9999 ]] ; then
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"
+ KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv sparc x86"
fi
fi
diff --git a/net-print/cups/cups-9999.ebuild b/net-print/cups/cups-9999.ebuild
index 561c0c7527d4..4e72b3e88b7a 100644
--- a/net-print/cups/cups-9999.ebuild
+++ b/net-print/cups/cups-9999.ebuild
@@ -17,7 +17,7 @@ if [[ ${PV} == *9999 ]] ; then
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"
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
fi
fi
diff --git a/net-print/epson-inkjet-printer-escpr/Manifest b/net-print/epson-inkjet-printer-escpr/Manifest
index 21fbd95154fc..59c88a5a4b24 100644
--- a/net-print/epson-inkjet-printer-escpr/Manifest
+++ b/net-print/epson-inkjet-printer-escpr/Manifest
@@ -1,12 +1,13 @@
AUX 1.6.5-warnings.patch 1115 BLAKE2B eac889dc8f5b39bbcf633c3ff2469ba1d3e07f475aa29f82e2ff81568aa72e2a3c25018c481b9d56bfd321314fb931561bbaed5b0883597c6fb296465ac486f1 SHA512 8a32ce7d22bb97cf1a7c1864353cab4a148eb4d1dc599f355420e0119dfb89abbfb66cbe58c8f35e2f8fc3a62b0c4018e0d48065acd21b17cb250e4722b9e027
+AUX 1.8.6-warnings.patch 1624 BLAKE2B bbbb104be24df30a8b9391b6a9e781b4e74d7ff59a50a14ad7c06a3da9d2b99bc221c2c962275f050e9e8051d30c5121dcbcd786b2025571fbdb43440f8ab418 SHA512 59c604214a67473d3d6ffb48c30e295548f5205ff5827acdefb3d2ad54948d404a202090fb92ce40f6087f4482dc1d77d5a2ad1713ce7adea72104bb18bc2594
AUX epson-inkjet-printer-escpr-1.7.7-fnocommon.patch 309 BLAKE2B 70e10c99dcf8b5d06acd38722f419c09f994253538d88cc9621051ee58b8a9cbe203c35c279c9ef8b5f0f7cd091118a0b2ccf802e09e2996f4e6346e7927f695 SHA512 5cff64797453868d1d0540a22fd72b53d7214d2e9c574cdf635206baf71fc227147babcfe97c73193ca356ad40afa5bb7ea80107576efee138b936e052b9fb2d
AUX epson-inkjet-printer-escpr-1.8-missing-include.patch 6575 BLAKE2B 24e0d0e2674fb74b4cfabe27a695c08f4b1a87a26ddb82956157449c09c4f0e71ca9585db3507b92902ec7deb02a41a3aa9df770820379bcd851b47f4865b8e1 SHA512 392b4713ca94fd8656d39205f61db3f5491c09a15f5dc1f1239a07928d62d243d24941893c197bc227195129e7e346c8479de234aaafbf91d64716dba395068a
AUX epson-inkjet-printer-escpr-2-gcc14.patch 11552 BLAKE2B 2ca31fa995937129cedd93945d1f8603e76f5239ac1aec802a4c58f889d78d4b514fe42ef16608f946c7f2895650ff8a89dace11b64a1cbfef78172ed92dc966 SHA512 c40741c96b462c938d54b646dcbf04ae69c7f9b227f0dbb5cc587e46730359c717e5cf0272c729c7343b18612110153cef454d85e19d76ca7b3e94f36ca0a498
AUX gcc-no-implicit-function-declaration-1.2.patch 2421 BLAKE2B 158c074ec7d37ee1a09b29bbee21c29da0ff2784fe25b22f64d2b199b07a8d8c90ca92477f7c284ded194c1a66bee219943b7c827bf7fb1b58227b3e7caedc3b SHA512 55533abc7b4f4cfa6c95868726721e59d187601722c0b2daa38d913f15ce9c695ae4c900274c46a770cfcdf85c46f77c724b936686a70bae34be5660c41a34aa
DIST epson-inkjet-printer-escpr-1.8.5-1.tar.gz 5666905 BLAKE2B 549c948709993779b5615b501038fdceb6c3d6f173709b8cf99459346fff89923bdbe1babe34ee98eed4e1ebbd7a4b5962ddbc9cec9711aa15ff2056fec3d436 SHA512 4117b1efe903e4f506bbc67c45079f1d467ff6527691308734e55d32feeda3ec44b2dd85361e0243114f924eef04a91b0a5e86b5008f0a32ef323989b3d2896f
+DIST epson-inkjet-printer-escpr-1.8.6-1.tar.gz 5715741 BLAKE2B 0da5e0af022bf2ce42ef94631c984b8308562bcb8f1f47a8f50b77be09326a80e9495ddaf02becdf72e78e50041f73cdd558c96d72046600452de50bc68f1bc8 SHA512 d0040c99793ba33e54ec5f0137f3b672628f089a6cd792916c24fc5edab75702561dade91eb63cd4b3b8e898f7b4647c899ca425e1449a401c7ff562f8cc0f1e
DIST epson-inkjet-printer-escpr2-1.2.15-1.tar.gz 5560479 BLAKE2B 8180fe06df8175ec31044b0eec2a125b9567c11a827343401a07e59e8bd93e689617b9b29364374f1d6ba6d6bca320d6615f601791c59e966d3a4d63f7adbeb0 SHA512 62cd5161f65f8ca6f8c1a8bb755e06eb147d4a06b5f796a8068ed9235b3abf38e6ccb10e82bdd93fddc085b90a7f9332e024ba09679aa08490a05735c0372653
-DIST epson-inkjet-printer-escpr2-1.2.9-1.tar.gz 5367737 BLAKE2B 6868569a6bed622e2f50619a36ffb0a0f7e834fd8a794ae3bc906d971db26b0c86386c9545190ec384027d0b8e8f62ddda6cb24f1e3f60b9c535a1eeddff4332 SHA512 70ff744d42fac4c79d2994648763b0b3970ee5463a7a310a0721a63735d536cb9a0499c894289d946b30e6f564f9bf60aa61801580ab6635af211d50867921a1
-EBUILD epson-inkjet-printer-escpr-1.2.15.ebuild 985 BLAKE2B be3e9e4c4c9973124058cd95fa4b7392c220a770da4b255c9e69888264d6a9b59ad4d5aeba43d1a596f6c6b41bebb87bf2da017991bc4a4ba7ef4ccf49801b16 SHA512 a3eac5de105b129c01e95e4d73d68e05e27ce3aea6296dba73d671e2c18f940012b843e237a8f9f31dd1a715e5df2af50d5cbb218d5b65136e71049bf2ff3625
-EBUILD epson-inkjet-printer-escpr-1.2.9-r1.ebuild 881 BLAKE2B 4b4f4632e1e47c8bcf311950e35f9e400e397cb25f0ace2ef89b6c45163cdc86a81c67497e065ed95a643a1266c6796dedf16841ca21fbc078100f81cb4b9829 SHA512 0577511cedd44fd04ef6ef681e3d5cd0430a0a6626834fe19df60ac677052b5c64c4779e7e3eca9a5c2a074fcf634804d3e45f7f839a288d8a3e45da6bc1e376
+EBUILD epson-inkjet-printer-escpr-1.2.15.ebuild 984 BLAKE2B a652211011d88737af38b062d5a4a038a0f832374b5b232aaa9a5684541710052c431d377c4738bbd409f275990c0a94f3a2b1c4a042ef97883bda6d92a63812 SHA512 3ac40276d11f11f695de917faac0ee7be2cf702af748ce7af2dbb286c8f2e192bb27008ea98207734b8d79944924a3bada9789605775740a5287554120df4f99
EBUILD epson-inkjet-printer-escpr-1.8.5.ebuild 1079 BLAKE2B e718ecb13d39a8bfe03f65f8adad42895b853f686ad3f3166bfe3f0735b80aa7e5c7db34c7906a1dbc2bc1f8dff61b09d304dd118d90646cec39ab96a0a55753 SHA512 6ee84e32bd3701f8aa2bd1a6bff6b49044a1b3ebbe78599e04bf9355ffee8493013fe5bc78d04cc922053c9337266b9e66250e48b83dab8f42c1e75506fd8106
+EBUILD epson-inkjet-printer-escpr-1.8.6.ebuild 1226 BLAKE2B 2c3954effba4fe820388043cc4ce3b539bd553bac57f6be2f40e8d14b82df3d6a5805dcdcaefabf8cb88f8c99190d425950db046ac5cc1e3a74c04cbcc29e5a4 SHA512 45855a0ee79f593b06bc02201de3d74aeabc83bd68ab164cf1d0976a40ff94d199b4fcf0cbbb1e02829e844f5d0504ebb1cda66f0a13f1d427fb6870e21aec11
MISC metadata.xml 1890 BLAKE2B b90489bd80a2957d1a6287a727d847c1fdbdfb576f7e816b60196b7d82ac13c72fd19322202f651cdfd11b56fe09fe962230f0d2eb4f1a9565ff9ad9b9ab0c24 SHA512 8cb73e282d607a5699d4c3e4f6f6f4663153ea9a0240a5b6b73317ab7ffb8ba1d54ed00c7b6ed53045059b246f62ee841cf27cc83a56a7ed72d9b2131463bc24
diff --git a/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.2.15.ebuild b/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.2.15.ebuild
index f29a147b08b4..7af630931f56 100644
--- a/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.2.15.ebuild
+++ b/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.2.15.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://download3.ebz.epson.net/dsc/f/03/00/16/06/85/fddc1d5996d0cab4dc
S="${WORKDIR}/${MY_P}"
LICENSE="EPSON LGPL-2.1+"
SLOT="2"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
QA_FLAGS_IGNORED="/usr/lib64/libescpr2.so.1.0.0"
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
deleted file mode 100644
index ee7aecc88746..000000000000
--- a/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.2.9-r1.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# 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.8.6.ebuild b/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.8.6.ebuild
new file mode 100644
index 000000000000..1bb1bb81960c
--- /dev/null
+++ b/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.8.6.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools edos2unix
+
+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/16/21/81/74d098a47c3a616713079c9cd5904b468bb33dea/${P}-1.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64"
+
+DEPEND="net-print/cups"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${PV}-warnings.patch"
+ "${FILESDIR}/${PN}-1.7.7-fnocommon.patch"
+ "${FILESDIR}/${PN}-1.8-missing-include.patch"
+)
+
+src_prepare() {
+ local f
+ for f in $(find ./ -type f || die); do
+ edos2unix "${f}"
+ done
+
+ eautoreconf
+ default
+}
+
+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/1.8.6-warnings.patch b/net-print/epson-inkjet-printer-escpr/files/1.8.6-warnings.patch
new file mode 100644
index 000000000000..6e83ed6e1404
--- /dev/null
+++ b/net-print/epson-inkjet-printer-escpr/files/1.8.6-warnings.patch
@@ -0,0 +1,53 @@
+--- a/lib/epson-escpr-api.h 2024-10-30 12:42:07.278862232 -0400
++++ b/lib/epson-escpr-api.h 2024-10-30 12:43:46.975989499 -0400
+@@ -111,6 +111,10 @@ extern EPS_ERR_CODE epsGetUsersizeRange
+ /*** -------------------------------------------------------------------------------*/
+ extern EPS_ERR_CODE epsMakeMainteCmd (EPS_INT32, EPS_UINT8*, EPS_UINT32* );
+
++extern EPS_ERR_CODE SetupJobAttrib (const EPS_JOB_ATTRIB* );
++extern EPS_ERR_CODE SendStartJob (EPS_BOOL );
++extern EPS_ERR_CODE PrintBand (const EPS_UINT8*, EPS_UINT32, EPS_UINT32* );
++
+ #ifdef __cplusplus
+ }
+ #endif
+--- a/src/filter.c 2024-10-30 12:44:02.992729085 -0400
++++ b/src/filter.c 2024-10-30 12:44:49.836274137 -0400
+@@ -32,7 +32,9 @@
+
+ #include "epson-protocol.h"
+ #include "epson-escpr-api.h"
++#include "epson-escpr-services.h"
+ #include "epson-escpr-mem.h"
++#include "epson-escpage.h"
+
+ #include "err.h"
+ #include "mem.h"
+@@ -42,6 +44,7 @@
+ #include "optBase.h"
+ #include "linux_cmn.h"
+ #include "custompage.h"
++#include "xfifo.h"
+
+ #define WIDTH_BYTES(bits) (((bits) + 31) / 32 * 4)
+
+--- a/src/mem.c 2024-10-30 12:42:31.732309679 -0400
++++ b/src/mem.c 2024-10-30 12:43:15.375844801 -0400
+@@ -22,6 +22,7 @@
+ #endif
+
+ #include <stdlib.h>
++#include "err.h"
+ #include "mem.h"
+
+ void *
+--- a/src/wrapper.c 2024-10-30 12:48:35.673934604 -0400
++++ b/src/wrapper.c 2024-10-30 12:49:00.237373816 -0400
+@@ -35,6 +35,7 @@
+ #include <signal.h>
+
+ #include "libprtX.h"
++#include "custompage.h"
+
+ #define WIDTH_BYTES(bits) (((bits) + 31) / 32 * 4)
+
diff --git a/net-print/foomatic-db-engine/Manifest b/net-print/foomatic-db-engine/Manifest
index 747aec97f1d3..4597142f79e2 100644
--- a/net-print/foomatic-db-engine/Manifest
+++ b/net-print/foomatic-db-engine/Manifest
@@ -2,5 +2,5 @@ AUX 4.0.12-use-pkgconfig.patch 1010 BLAKE2B d37cb4ad77e191229c0ca7ae64b8f51b7ce2
AUX 4.0.7-perl-module.patch 323 BLAKE2B c291580e579f27efe5d1bbf26ff1a5ad7345cae33a8e1499437f096691c53f6d43be3c4c55491bdcc7c852d9538064a1d9df575012f4d83c451a6c7920d466a3 SHA512 913cf4dca46b028581d7e5cf11ef8a4d03b3a0ad415059eea4db5825a67c18e2e62adff26c7a7d67b6af78109c176553849a28b57d06c383ff59c8b0c12a514a
AUX 4.0.7-respect-ldflag.patch 596 BLAKE2B b540f6b0a03a8abe28e245069ce1703e8505862c326ae8fa95c9b548c8eb908b90b6c7681d928b0e74a9963daec0a8fba6f7e37efaadfd79d46aa8961da615d7 SHA512 afb080f281c1c5a6b0011964a7c73e9f843fa347543324b4441c40aabe7b534a5689ae4be285095e43b91f5cf37f4cbd1d8f091740fc3c1824eb0099aabc9ca8
DIST foomatic-db-engine-4.0.12.tar.gz 360499 BLAKE2B b03ba0a0cddc2d1c59a64ffa33e577f991d36c478e3f7b43f66474c749b7fb546f0ad5b04fee056c69532a6f126b87c95a72e5561443ef79bf3bdfed650d6b07 SHA512 b7e99ace6a632e9b0213183bd2c6c2d11ca072ea0414e8ca569082b7ec183dd81c80594ad63fdee82d761ae36d4fce9d3c881569a95a6085ec326ef7fd21154f
-EBUILD foomatic-db-engine-4.0.12-r1.ebuild 1202 BLAKE2B 926bc57d053c2c1fa98d28ddf4fa3c1fc251b05b27c34b85e9683a528cdd16283410092d414fc95124c1482490ce26fda080edd320cfcf844f257c6d14e49b2f SHA512 1cab980f6dc6be95d1570ac6e1661ced45de007f49571870b059f3615a04a06fb2d533af11624020d66b7b3deb1696e975e9d65e698add5098d5df62dc775331
+EBUILD foomatic-db-engine-4.0.12-r1.ebuild 1196 BLAKE2B 83329c058c99c0f7853cdcdb59b1245c03113a5f114d47229afda721c214162d92d5c94171a7f4df0592a01b6bc92513b95c7e629ab5cd9bb15ed630712b307f SHA512 5f9748674ad8f8bdc08b87f6f2ac54b853f0b220b6a878dfa212b750265c5c5e3028d94dadb82e2939e51b029ccf3e4fb943ac51b2acb23bcd093da9b8214767
MISC metadata.xml 260 BLAKE2B ef27f93753b1b9b96d35941f8a39c7e3b1695a49bff8076cb92b718524ddf1449ffa97d26ae289ad493695a8bfbeadb6bee0030f649bef02e0ae155ca851713e SHA512 94c019f5d5e8bec9d817d4b192ae0b87effc9f73283800b6ee7b5fe50a85bf6e245eb9720c2d8f3b497b40c7e298969c5e23c5afe3af14384eee92e76afacc8c
diff --git a/net-print/foomatic-db-engine/foomatic-db-engine-4.0.12-r1.ebuild b/net-print/foomatic-db-engine/foomatic-db-engine-4.0.12-r1.ebuild
index ff3713e2c096..df2ae843dcfb 100644
--- a/net-print/foomatic-db-engine/foomatic-db-engine-4.0.12-r1.ebuild
+++ b/net-print/foomatic-db-engine/foomatic-db-engine-4.0.12-r1.ebuild
@@ -11,7 +11,7 @@ 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"
+KEYWORDS="~alpha amd64 arm ~hppa ~mips ppc ppc64 ~s390 sparc x86"
BDEPEND="
net-print/cups
diff --git a/net-print/foomatic-db-ppds/Manifest b/net-print/foomatic-db-ppds/Manifest
index ec66844cca14..a269e1f4ebaa 100644
--- a/net-print/foomatic-db-ppds/Manifest
+++ b/net-print/foomatic-db-ppds/Manifest
@@ -1,4 +1,4 @@
AUX Makefile.in-4.0.20120117.patch 1161 BLAKE2B f935f674597d1edc4d70b2fc600e5a04dd55acbae7fa648089ded8f10f3d61390c62e24ba5d491b3a4ac2fb7c9636db3c4895842da798c5a870972d334b71b31 SHA512 75ab0f16ce0c187553fc7bdcdc9a23ae8fecd50942d3ba0282ec2d4001f141904e6f93c8a9b6496ab2b0205a31d46a082ea304e8dcbc25f5e38c86ff696d7935
DIST foomatic-db-4.0-20190226.tar.xz 6438248 BLAKE2B c5ce6b3ec5a29524f6f8c73fdaec88a97a3fd4521753c5058d470ebadf7c35c3218bd7e78023a26b267796ccfbca98368ee4d4bc5252b9339ee1c067adbe80b2 SHA512 308cf8b5648ae8f3be1a1a5af1885319ae9f263575e7b0b06bd66e6e3e0b495656124face65e285bfa657dbff3cff226bb00d78b873f16849b426641dc7d52fe
-EBUILD foomatic-db-ppds-4.0.20190226-r1.ebuild 746 BLAKE2B 784aa6bfc8bb9b28ec80d8a0ddce6b336f5aa22f75c3e50f88bbd1fba870baef98c5006305337632b0c080444862a39bba9b233b98f56d41c2090a0c30fbd932 SHA512 4f98056553de0148c72229bc3061fceaef4d6d6095cc13dfbcb506a6ffb19cf24b9f9a791a8604f99321e8d756d25788ae695c4e99750d777d07a4e2544393ed
+EBUILD foomatic-db-ppds-4.0.20190226-r1.ebuild 740 BLAKE2B 514cfbac8b03baa5e86b81e0433021d09aba9fe77f821ecb3abdbc9723c67ee2db4ebaa9005ac218174d306440227db8f017366720180263ba5aa10b2a722de8 SHA512 362c330f3198733e058b77f661d6145de4588fe3b01d8a93728dc83c977b1272926aa50e3775acacf309514f6fa17656cf54035f406d306ce6210ead0eb3c42a
MISC metadata.xml 284 BLAKE2B 36426f95cb354d191a324eb7a89eb8a6a18ba1c85403f6a7a39bd5f3872f7d48d7d4d59ace082d75e3c01227e02c87e846412044d5f478d3db505d70b60dada7 SHA512 fd6b64e299ddaf025ad25216c5c7010b6928ecd3f92b0d4fc72697a03551e17f6fbbf8478ab736483a4f219cb1d7da66075cd1b6b69850977ff836d562f63740
diff --git a/net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20190226-r1.ebuild b/net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20190226-r1.ebuild
index 0d96755a90e8..586380cb927c 100644
--- a/net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20190226-r1.ebuild
+++ b/net-print/foomatic-db-ppds/foomatic-db-ppds-4.0.20190226-r1.ebuild
@@ -10,7 +10,7 @@ S=${WORKDIR}/${PN/-ppds}-$(ver_cut 3)
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm ~hppa ~m68k ~mips ppc ppc64 ~s390 sparc x86"
PATCHES=(
"${FILESDIR}/Makefile.in-4.0.20120117.patch"
diff --git a/net-print/foomatic-db/Manifest b/net-print/foomatic-db/Manifest
index 894cb1cc6806..b9562fbcd9c4 100644
--- a/net-print/foomatic-db/Manifest
+++ b/net-print/foomatic-db/Manifest
@@ -1,3 +1,3 @@
DIST foomatic-db-4.0-20190226.tar.xz 6438248 BLAKE2B c5ce6b3ec5a29524f6f8c73fdaec88a97a3fd4521753c5058d470ebadf7c35c3218bd7e78023a26b267796ccfbca98368ee4d4bc5252b9339ee1c067adbe80b2 SHA512 308cf8b5648ae8f3be1a1a5af1885319ae9f263575e7b0b06bd66e6e3e0b495656124face65e285bfa657dbff3cff226bb00d78b873f16849b426641dc7d52fe
-EBUILD foomatic-db-4.0.20190226-r1.ebuild 1223 BLAKE2B 4bbba98509f14c700dedfaa210db7a01cc7a95247264b4f1491109c8e9ca9ad22ed1eb4bd967f56d92d85a22f0268a6e1dbcf7dc30ae6b2c75c760e0690e5f98 SHA512 2fc50cacbcdee69b542d815dd233f17ebef6e3e59703ee86e0dc7d87ba047f6e53ad76b735c4c5509e232e9905883585f7d365664045c1985668b04d1c511f87
+EBUILD foomatic-db-4.0.20190226-r1.ebuild 1217 BLAKE2B 21504d96c9075777572ffe2679d1ae5b51c28eb52ead177af91e7acb27e0cdebebe8254f436314e4e324bbb673b72db3086839556e1cc8c2a3053ec795107be7 SHA512 bf51632d151f5960cea732aac66da2c33324036d2ef063461438cc3377040c9501e02759e2dd08fda1907be68203112151b413c3d3f0eeba75f385abcc2b6cef
MISC metadata.xml 284 BLAKE2B 36426f95cb354d191a324eb7a89eb8a6a18ba1c85403f6a7a39bd5f3872f7d48d7d4d59ace082d75e3c01227e02c87e846412044d5f478d3db505d70b60dada7 SHA512 fd6b64e299ddaf025ad25216c5c7010b6928ecd3f92b0d4fc72697a03551e17f6fbbf8478ab736483a4f219cb1d7da66075cd1b6b69850977ff836d562f63740
diff --git a/net-print/foomatic-db/foomatic-db-4.0.20190226-r1.ebuild b/net-print/foomatic-db/foomatic-db-4.0.20190226-r1.ebuild
index 89e2462b4179..50d93f48ace3 100644
--- a/net-print/foomatic-db/foomatic-db-4.0.20190226-r1.ebuild
+++ b/net-print/foomatic-db/foomatic-db-4.0.20190226-r1.ebuild
@@ -10,7 +10,7 @@ S=${WORKDIR}/${PN}-$(ver_cut 3)
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm ~hppa ~mips ppc ppc64 ~s390 sparc x86"
RDEPEND="
net-print/foomatic-db-engine
diff --git a/net-print/gutenprint/Manifest b/net-print/gutenprint/Manifest
index 50f24630912b..6caf4550bc5e 100644
--- a/net-print/gutenprint/Manifest
+++ b/net-print/gutenprint/Manifest
@@ -1,4 +1,4 @@
AUX gutenprint-5.3.1-cflags.patch 659 BLAKE2B 90beb435d0b9a036f31e25f78afedca178b2b6d7bba3cf294ae45699e139d136bbc996dfca86db65d64a61ef004c343ba55f7e097e7304b1d6392efe0ed9cc31 SHA512 f7bac5fd0cff9c1e5b47c965c0304ffda47478241f715de4ada829a295ec54adf198046699bab866166f974c692ac525207f0541e7ba6959e18d63765128327d
DIST gutenprint-5.3.4.tar.xz 5341824 BLAKE2B 134e59c7dbf9c0ba95b91c717f1e6841f35520b55105feb1ba40b82785c825b8e2a2429990e78186a1455e5c6de9880f911438d514c53c56d05575dd4e2d68a4 SHA512 63de0b62edbe255a7efaaeab1dcd22577b7b46d7e0e48441b79977f19e76bf3862e4e8e18c55dd1f2e7392d555f9e8ee875ea53b90c689852d2343491a8fbcc8
-EBUILD gutenprint-5.3.4-r2.ebuild 1916 BLAKE2B d3d27003be547d33179e858c6cc5e1e03fbff6bd44bd46dfcac4dd52e4af629ad1b3c6bf1342fdb01e79602af1034315b0b5724348a73276b12314702e118ac0 SHA512 790e208687d3714aae2247c954a27a370cc7427a79cecfd93a3af5c31a501737cd531a8f7f8016a0f5188aa432f9aa77860eacb8f94574d20eb6b1e77c4e7baf
+EBUILD gutenprint-5.3.4-r2.ebuild 1910 BLAKE2B 20ef1a22dd8ae85a38a99e46d5b1f5407ecd0d17e07ea372d660824dc2959c403a52e1709f5f98ba022ae55d90f4a93fdd49ca3266b8b35bd33ccde649622559 SHA512 22914412a022924e7b35e5468098f433a79b911fdc61ea7b2c69d86e541a586a04756b1b06fc72742293980f36c74d0c88df345317f7d90a6f8f92d290c7ffde
MISC metadata.xml 340 BLAKE2B 91ab730b8ea24dd11ef59949916cda1cb2a0b2a8b77144ef2a9287eb4145e5c38f98a0572381eb6f75a14dd73ff4ac4d1aaf495432ca4402ab75c6f3b7519e99 SHA512 f8fbc6a3db9143f2bd4094ae5a0a6e7ec0bba5e06c90082faed08d5c76e89972422751c5217e1dc118cd10eaee99ffd02249eba4b5ec885fe9e669e75cfdd595
diff --git a/net-print/gutenprint/gutenprint-5.3.4-r2.ebuild b/net-print/gutenprint/gutenprint-5.3.4-r2.ebuild
index dfd4b5b50189..0fe23da68e57 100644
--- a/net-print/gutenprint/gutenprint-5.3.4-r2.ebuild
+++ b/net-print/gutenprint/gutenprint-5.3.4-r2.ebuild
@@ -14,7 +14,7 @@ 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 ppc ppc64 sparc x86"
IUSE="cups gimp gtk nls readline ppds static-libs"
RESTRICT="test"
diff --git a/net-print/hplip-plugin/Manifest b/net-print/hplip-plugin/Manifest
index 5f28d1cd4eca..70286a292040 100644
--- a/net-print/hplip-plugin/Manifest
+++ b/net-print/hplip-plugin/Manifest
@@ -1,5 +1,3 @@
-DIST hplip-3.23.12-plugin.run 11491524 BLAKE2B 9b87522a78588d65815992a170451888b4c6ac83809498fae01cfa4d2c333657a7cf49f2358e12ebfd0ae0f4169e29729e9ef8ba6716f74de0a83b11552275e3 SHA512 933c27040443584e0cfda71b50b8a251ebd34fdf4a2c90f40e36d1c155b3ae87c1474835356f685de2997469b4b7a3f000e216fd427118eea2542fa142783ab9
DIST hplip-3.24.4-plugin.run 11490921 BLAKE2B 8eeb0a292b1a132841c2d69808441b281de04950be2b906a5906b36b634f30ed42484cc14ac232ef4c50ae5e660c5e48e2afc407e64b12f1b8deb7cf38425bf2 SHA512 21b1636d4d4f7f1673f1a88abc13f4f81c225d6a36a4d45f4f0579ec5ca9bb4a3885ffd413ab6888290c3e2aa62eef45a27cd5eb84c8f20ef3e6c09e24c854b9
-EBUILD hplip-plugin-3.23.12.ebuild 1483 BLAKE2B c75f0e9c64e2f71916ec9b8a67b41faefffee00cce74e3ab2df526b271b90b26cd20ccbd0549cd43e0362f33650158b17334a063260a65734cf673ef8e9606d4 SHA512 166432f69b79f75c142db0febcb91cdccb9ecea2a98bf1a9afd6f10cc5ee52b357fd21772ededa54dcb6842400b34368659cfca51af33578c4cc292c58a5099c
-EBUILD hplip-plugin-3.24.4.ebuild 1487 BLAKE2B d84b9416e2d8f29a3aef8c0d96e89116e4f6cdb282e6d8a4eac5ff7e6a26256dda52062945ada8ac6182186a049ab875665af0c0b645cde5f14916a2847f166c SHA512 31c6702526a7ef33ec665a4a89dc84d43e75485283d5ffa36083f6496d450d5b0694b97fc1496df64a905898a41f2fe23b5ef4bc18f45b4b4fe817d20feb3c73
+EBUILD hplip-plugin-3.24.4.ebuild 1483 BLAKE2B 90afb76f81fe38a00ee98554c49f4b0c5a282ef8bc0cfad75d2dd536e4d825b6c8f9ab8e3e123a5a66027a1e3289bcd7e2c91ea70162d88f6aad7daab2f6c9f5 SHA512 efa4f1ffe2565597fd72063d5c31f6e8715ba5158c35c9a3886b73754fe0fea1aa7ba26ced0da1a049c77566fd05bc59e2b35f5aaf2f95cc59eb3b087d9585b1
MISC metadata.xml 523 BLAKE2B 396a3e3f19f1929ac628fd3301f7de077e34d80b88f0f65dd4035a55b8ff16be6a89dc94b47085dafc7a8a2def19353aa52996a12e51e94154a61ba1329f8c91 SHA512 9d5abebbd6fdac76142c70aa911c4ac55eb5388fd39e010d72e8e6253f51a7924eda2a675cd8ce3475fea76b307805644cf8f7140b265e66b4fcd65a8546fd96
diff --git a/net-print/hplip-plugin/hplip-plugin-3.23.12.ebuild b/net-print/hplip-plugin/hplip-plugin-3.23.12.ebuild
deleted file mode 100644
index 2574deffcb94..000000000000
--- a/net-print/hplip-plugin/hplip-plugin-3.23.12.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-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 arm64 x86"
-IUSE="orblite"
-# License does not allow us to redistribute the "source" package
-RESTRICT="mirror"
-
-RDEPEND="
- ~net-print/hplip-${PV}
- virtual/udev
- orblite? (
- media-gfx/sane-backends
- >=sys-libs/glibc-2.26
- virtual/libusb:0
- )
-"
-
-HPLIP_HOME=/usr/share/hplip
-
-# Binary prebuilt package
-QA_PREBUILT="${HPLIP_HOME}/*.so"
-
-src_install() {
- 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
-
- insinto "${HPLIP_HOME}"/data/firmware
- doins *.fw.gz
-
- for plugin in *-${hplip_arch}.so; do
- local plugin_type=prnt
- case "${plugin}" in
- bb_orblite-*)
- use orblite || continue
- plugin_type=scan ;;
- bb_*)
- plugin_type=scan ;;
- fax_*)
- plugin_type=fax ;;
- 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.24.4.ebuild b/net-print/hplip-plugin/hplip-plugin-3.24.4.ebuild
index 2325efad4421..401c2dba5ec8 100644
--- a/net-print/hplip-plugin/hplip-plugin-3.24.4.ebuild
+++ b/net-print/hplip-plugin/hplip-plugin-3.24.4.ebuild
@@ -12,7 +12,7 @@ S="${WORKDIR}"
LICENSE="hplip-plugin"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+KEYWORDS="amd64 arm arm64 x86"
IUSE="orblite"
# License does not allow us to redistribute the "source" package
RESTRICT="mirror"
diff --git a/net-print/hplip/Manifest b/net-print/hplip/Manifest
index d022465e7d18..25d90bd87e6b 100644
--- a/net-print/hplip/Manifest
+++ b/net-print/hplip/Manifest
@@ -1,9 +1,4 @@
-DIST hplip-3.23.12-patches-1.tar.xz 21132 BLAKE2B 83cee13ef988618cf6537b3954649c733b3de99f4d1c2ffefe9aeaba8f21e61a92dfa2e4cdb87af3d4b56df244e7de1b1d6bf73d878aa8ccabe60c537e05916f SHA512 89a0139660b013c11ba1dfa6adf1840b8ccc5b49bc31580481967c85e75ca79aba537bc4b65834ee464013b7aa0544267235d14dc877cb5276cb6e89c6a3fafa
-DIST hplip-3.23.12-patches-2.tar.xz 22484 BLAKE2B 919be82d0639bc30fdbe6a5651ec08c8b6951fc31284e52f09ea2aed254bb34024c7f757ec3eccec6c0fd5d261a625c2e77d6aa33d298287f26313811280e3b7 SHA512 bc9746fb748819ca06a0a3d5b2a66ab15ef499ed01177fd936f754d743a282253897db7f813ba8165e8336a9a3540c2f9b99e10908930b3842ef7452957afc13
-DIST hplip-3.23.12.tar.gz 30162044 BLAKE2B 752a5b75855677e4f8b5b8738181d40c426268be4e393e5df7565c78efca68389e86d92f21002a733c0b2d5d62913bef3986e4bedd36a9f35f205c11e6027e7a SHA512 7461ffec38be68421e4204021f53d2b1641e7a67c14f205390d45f487a1af90956fd221f7e1561635508103ae944f19e04d6052d3f8928f2c9685fdcdcf515df
DIST hplip-3.24.4-patches-1.tar.xz 22068 BLAKE2B 9b388033b17315c407014b0b344e2994c456c84dd856f3f522e202b431a03fb315060d74ead98696af62934fa5e5d44185cae20cd3171252f33049a9832b15f5 SHA512 292c5717627ecbb5f50b2ecad82fdf43bb80c3128f1e4c3cc806167dd34ac9c7c5c2a988103ec18fc82483ba95221261c7935271a0b213523f00a4e9de23731c
DIST hplip-3.24.4.tar.gz 30217933 BLAKE2B 0b5c93465f6d9e30916bf57fd7f2d490d2f04ef80ed1654a7d2c6adc57a5293e358720a71bbb76757a1496d9f7ca05f077f6e9ea62cfa243319fe9d551440710 SHA512 6162ec58289433659ed4c3a254b2a50863c01acb87a8c0e1a1f935fed2b1916c5ae211c2d84130f40963368ff53e0c8da1878a1fce4dd08bd517f65bbcf6a2d2
-EBUILD hplip-3.23.12-r1.ebuild 8535 BLAKE2B 5a5a723b5fc8461b683119b6be9d573d0670941498b3c979193cba7c12d3fa40d1296822293004700c7f8ebf4e2ea3b2d566f6c0d9d2344618a3af76ba5f7c17 SHA512 10c05f98b99667c8987c4b06f96e63a8981b31b5df38a849f952aa834b1ba077a8e2d9c1178b8448c8d35f07a72a3d285ecdb60855c60212ead57db10b3cf280
-EBUILD hplip-3.23.12-r3.ebuild 8538 BLAKE2B a1b3bae13e7e833274f959d7ef42f457338c92df5977cfbeb51e4e04947964bfd028d1e9940e8aefae910f0f9ff7d52013540d90542004fdbc9bc4b47d5cee2b SHA512 0244c4c5f75e6fef7020ad6818beb5064eff601ba0677b4d4911018a9f744b4522cf658f88aa63fc533ecbb9fbd9f6050e160675bd83e0465b2091ca24223517
-EBUILD hplip-3.24.4.ebuild 8543 BLAKE2B 26b4844790b289a7da111ae6605e793729e3799d4635bec5d68ed03d7cc83642ce526b018d1208b02d0e77629041565a84c57b4071ba5372b336cceed1cc39ab SHA512 2318246fb34cd9e84aea0b8e32b362408a84e4ebb5a6cf875a317594335a8927568c09277b3b512d6d8c469f8f262923d2e87be4b26256cbd51328a89c6fff47
+EBUILD hplip-3.24.4.ebuild 8537 BLAKE2B 02321455367d91fc80bcbaf55dd171696ce03de214fb5cdeb36686074dbcb4549ea0e9ca258c9c82649d6df729484ff555b8db27e929544c5bed86b34edb580e SHA512 246bc75f892fe2e1638e1198356a9dcc900adb2c7fa5b663667bfe034c363038dfeebba095ebbb0d1de3e19290d29245f6b87071f15bd08d9a2c219f902aefd0
MISC metadata.xml 1849 BLAKE2B 381cc0d0fe08d072487850a5f5ac6e264cb4ee5db8722b6f83ad9d4e6e78948a7768e80ea2a8a2313bdca1029b59a02d8c3ca309d9438d5e4d63585f7a6b2a83 SHA512 0f5f42b561099e943d99dc5e50cfd42577582b31590c0cd98f276e5acc364fb31f4a48cf91b33e923d24daa77b7b3a6bc54a0c24d9ebff9e3ec82c957a5671e3
diff --git a/net-print/hplip/hplip-3.23.12-r1.ebuild b/net-print/hplip/hplip-3.23.12-r1.ebuild
deleted file mode 100644
index 24eb1e8fa894..000000000000
--- a/net-print/hplip/hplip-3.23.12-r1.ebuild
+++ /dev/null
@@ -1,296 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10,11} )
-PYTHON_REQ_USE="threads(+),xml(+)"
-
-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="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 arm64 ppc ppc64 x86"
-
-IUSE="doc fax +hpcups hpijs kde libnotify libusb0 minimal parport policykit qt5 scanner +snmp static-ppds X"
-
-COMMON_DEPEND="
- net-print/cups
- media-libs/libjpeg-turbo:0
- hpijs? ( net-print/cups-filters[foomatic] )
- !libusb0? ( virtual/libusb:1 )
- libusb0? ( virtual/libusb:0 )
- ${PYTHON_DEPS}
- !minimal? (
- sys-apps/dbus
- scanner? (
- media-gfx/sane-backends
- )
- snmp? (
- dev-libs/openssl:0=
- net-analyzer/net-snmp:=[${PYTHON_SINGLE_USEDEP}]
- net-dns/avahi[dbus,python,${PYTHON_SINGLE_USEDEP}]
- )
- )
-"
-BDEPEND="
- virtual/pkgconfig
-"
-DEPEND="
- ${COMMON_DEPEND}
-"
-RDEPEND="
- ${COMMON_DEPEND}
- app-text/ghostscript-gpl
- !minimal? (
- $(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_USEDEP}]
- dev-python/distro[${PYTHON_USEDEP}]
- fax? ( dev-python/reportlab[${PYTHON_USEDEP}] )
- qt5? (
- >=dev-python/PyQt5-5.5.1[dbus,gui,widgets,${PYTHON_USEDEP}]
- libnotify? ( dev-python/notify2[${PYTHON_USEDEP}] )
- )
- scanner? (
- >=dev-python/reportlab-3.2[${PYTHON_USEDEP}]
- >=dev-python/pillow-3.1.1[${PYTHON_USEDEP}]
- X? (
- || (
- kde? ( kde-misc/skanlite )
- media-gfx/xsane
- media-gfx/sane-frontends
- )
- )
- )
- ')
- )
- policykit? ( sys-auth/polkit )
-"
-
-REQUIRED_USE="${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
-"
-
-pkg_setup() {
- python-single-r1_pkg_setup
-
- use scanner && ! use X && ewarn "You need USE=X for the scanner GUI."
-
- 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."
- 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
-
- python_fix_shebang .
-
- # 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() {
- # -Werror=lto-type-mismatch
- # https://bugs.gentoo.org/861851
- # https://bugs.launchpad.net/hplip/+bug/2055371
- filter-lto
-
- local drv_build minimal_build
-
- 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
- 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-foomatic-rip-hplip-install \
- --disable-imageProcessor-build \
- --disable-lite-build \
- --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 \
- --enable-hpps-install \
- ${drv_build} \
- ${minimal_build} \
- $(use_enable doc doc-build) \
- $(use_enable libusb0 libusb01_build) \
- $(use_enable parport pp-build) \
- $(use_enable policykit)
-
- # 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
-
- 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/hplip-3.23.12-r3.ebuild b/net-print/hplip/hplip-3.23.12-r3.ebuild
deleted file mode 100644
index cb892efbc01e..000000000000
--- a/net-print/hplip/hplip-3.23.12-r3.ebuild
+++ /dev/null
@@ -1,296 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10,11,12} )
-PYTHON_REQ_USE="threads(+),xml(+)"
-
-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="https://downloads.sourceforge.net/project/${PN}/${PN}/${PV}/${P}.tar.gz
- https://dev.gentoo.org/~billie/distfiles/${PN}-3.23.12-patches-2.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ppc ppc64 x86"
-
-IUSE="doc fax +hpcups hpijs kde libnotify libusb0 minimal parport policykit qt5 scanner +snmp static-ppds X"
-
-COMMON_DEPEND="
- net-print/cups
- media-libs/libjpeg-turbo:0
- hpijs? ( net-print/cups-filters[foomatic] )
- !libusb0? ( virtual/libusb:1 )
- libusb0? ( virtual/libusb:0 )
- ${PYTHON_DEPS}
- !minimal? (
- sys-apps/dbus
- scanner? (
- media-gfx/sane-backends
- )
- snmp? (
- dev-libs/openssl:0=
- net-analyzer/net-snmp:=[${PYTHON_SINGLE_USEDEP}]
- net-dns/avahi[dbus,python,${PYTHON_SINGLE_USEDEP}]
- )
- )
-"
-BDEPEND="
- virtual/pkgconfig
-"
-DEPEND="
- ${COMMON_DEPEND}
-"
-RDEPEND="
- ${COMMON_DEPEND}
- app-text/ghostscript-gpl
- !minimal? (
- $(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_USEDEP}]
- dev-python/distro[${PYTHON_USEDEP}]
- fax? ( dev-python/reportlab[${PYTHON_USEDEP}] )
- qt5? (
- >=dev-python/PyQt5-5.5.1[dbus,gui,widgets,${PYTHON_USEDEP}]
- libnotify? ( dev-python/notify2[${PYTHON_USEDEP}] )
- )
- scanner? (
- >=dev-python/reportlab-3.2[${PYTHON_USEDEP}]
- >=dev-python/pillow-3.1.1[${PYTHON_USEDEP}]
- X? (
- || (
- kde? ( kde-misc/skanlite )
- media-gfx/xsane
- media-gfx/sane-frontends
- )
- )
- )
- ')
- )
- policykit? ( sys-auth/polkit )
-"
-
-REQUIRED_USE="${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
-"
-
-pkg_setup() {
- python-single-r1_pkg_setup
-
- use scanner && ! use X && ewarn "You need USE=X for the scanner GUI."
-
- 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."
- 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
-
- python_fix_shebang .
-
- # 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() {
- # -Werror=lto-type-mismatch
- # https://bugs.gentoo.org/861851
- # https://bugs.launchpad.net/hplip/+bug/2055371
- filter-lto
-
- local drv_build minimal_build
-
- 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
- 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-foomatic-rip-hplip-install \
- --disable-imageProcessor-build \
- --disable-lite-build \
- --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 \
- --enable-hpps-install \
- ${drv_build} \
- ${minimal_build} \
- $(use_enable doc doc-build) \
- $(use_enable libusb0 libusb01_build) \
- $(use_enable parport pp-build) \
- $(use_enable policykit)
-
- # 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
-
- 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/hplip-3.24.4.ebuild b/net-print/hplip/hplip-3.24.4.ebuild
index 684d9692524b..f2a418b6477c 100644
--- a/net-print/hplip/hplip-3.24.4.ebuild
+++ b/net-print/hplip/hplip-3.24.4.ebuild
@@ -15,7 +15,7 @@ SRC_URI="https://downloads.sourceforge.net/project/${PN}/${PN}/${PV}/${P}.tar.gz
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+KEYWORDS="amd64 arm arm64 ppc ppc64 x86"
IUSE="doc fax +hpcups hpijs kde libnotify libusb0 minimal parport policykit qt5 scanner +snmp static-ppds X"
diff --git a/net-print/libcupsfilters/Manifest b/net-print/libcupsfilters/Manifest
index 61eb1b54dbdb..87e7589c6480 100644
--- a/net-print/libcupsfilters/Manifest
+++ b/net-print/libcupsfilters/Manifest
@@ -2,7 +2,12 @@ AUX libcupsfilters-2.0.0-color-space.patch 8846 BLAKE2B 204e948b02db64854bc875fb
AUX libcupsfilters-2.0.0-r3-c++17.patch 622 BLAKE2B a36f3b54b7047cbf1c7b8ff1a615d53fcaa23d9a5cda7abd8a565b40b05ebf3dbf277c7008d99f17d907fb3c3a5e38ff3726a6a56c0bf9c4821d1c11665acff2 SHA512 4bfed9113913b8788f111334df3fa08536c965d316f5b627d614914d6ef2bb14747b8eb25a6c9bd69a092a6082829a97468111c70f3717ce1c762737faddcb07
AUX libcupsfilters-2.0.0-raster-build-fix.patch 842 BLAKE2B 37abde9acc45311a62edc669498bef9d6f86e691de3c9632aec66ca575c5af9a0dab03b9e7bcf97ad1b927580825a98ee7dcad3fe3e00d1679e25ec7b0f0e843 SHA512 2e639d238c2dbb8646174c3b76c9b5c4450639c8fd0fd1969545d86370fe077f04720412e561108dde88bd86e8a29cf6fe2233a45398494b50a3f6908aa834aa
AUX libcupsfilters-2.0.0-raster-gray.patch 1889 BLAKE2B 515b29df1141389262458205d1104f430f986f2ef5eefb9e2624c34715c4afd1f07b01deb57267fc322707f0799f8b31f17408c96af9f39c38d5eabbdc5eb678 SHA512 b63d639ac5472848a54f23bf0562dff58704b31864d753ce2f3502f56bd427feef4d2439f79e6fa20ab3bfcb61a4d0ac9f783c98716e09e1ed289c01ee570da2
+AUX libcupsfilters-2.1_beta1-CVE-2024-47076.patch 868 BLAKE2B 4820e50f9a6a43133a201e4488906ad910c8aee6d61a3f1612fc3a4f79ab2a59bf24b91e308959ae730c94782a972b440e723b846db93214de1b1c17ca2c3620 SHA512 e58464efafc9cbc661ed1dc467db523a078f44bd765cc17cd82e6583cfec48c864c012fa734a805717351dbcd874ceccd8bcadc9a7d2d243f0396c90cad3288e
DIST libcupsfilters-2.0.0.tar.xz 1279856 BLAKE2B ce9d839bb700017c303c1301c7a97fd02e3657a908e685377be49557d995574a7fc5a31d4fcbda5eeb9ba2d3cd07858224540dbf0bc9fa078cfd25a58ee15a41 SHA512 279bff6dcfa76312b10dae97480914345defd90eab79c4716d4553870f73e0f9db404786fd7e2948a86ae5aedb10dca0c2984ccb4222acbd4e835cd572030d6a
-EBUILD libcupsfilters-2.0.0-r3.ebuild 1613 BLAKE2B 40d181809f6dab64c2318ca6036e1649443c8e6a2193ac563dfb422c953c50ec9e7c00b75216125c3497459c3b4834b09311d1e4aff64ea7f26deba48c27dde2 SHA512 280951268cd099fe5e69efab93fee02df42cff893b6b4a4f48d25b67ef2aacd926166af95c764a31f37064c9e16bd0f9c025c63ad378589aefc0df52f24c7b3f
-EBUILD libcupsfilters-2.0.0-r5.ebuild 1732 BLAKE2B 71f40a7eaac7d6c40f8a1cf072ed836a69ca958a28458dd73c5d0dec05fea51af64f8d574b8378ae21876776df67c937f166914f3a503cd1d7488e1afa1620d5 SHA512 39f7dbdde7a8d2845ee4dad0f398f72f452cf7a18e5879f6d7214368672a801c179bac22f553b62b241467e284b5e5e0d1618de348ee8427be1777f2b5381fb9
+DIST libcupsfilters-2.1.0.tar.xz 1445276 BLAKE2B 7b7355c71b086dacfeb54d5ef4dbbe84ce23c5f65c36a7ef90c3f3b0a0a7630babebfd0d025dba01ad005714d7811dacf9c1983995e930212aee12b737a45c6a SHA512 2c15180a49f211215a13dac5b198a4f8d11fbc67c49d2112ec0c9a9cfd34f012867780bcf23dba81fae7bfaa7f05d4241b222dc6ad8dd83fc8ae29ce2869b235
+DIST libcupsfilters-2.1b1.tar.xz 1443976 BLAKE2B 043174e47c6c5de5393cfb4d6f41e3839646932cff42cf677319b2ea22fe8408fbf1d1edfb3b99c1d2c36916a92993069a40ed5f75552d47d88300e283b6aa84 SHA512 5b0cd2472f54188dda13b091f82b257ba926e12065c225ddbde9cab97597baa6d855f09d7352b7d7ee4af8416fc9c3ddb3c75e0c6a0a201b366d047abe47ecef
+EBUILD libcupsfilters-2.0.0-r3.ebuild 1607 BLAKE2B 71c325100275ba46d3cd6fcbe992511c8c03f34fe22d6282ed6180572490de7d0ddb12f83d3a4fc9a7dcbd6414a659b47ec9b0bde6cc2a05f898b7b973906a96 SHA512 114b8120157f04c8d2e1852726cecfa048fec5946295a293f73553f11930b41d6bf5a4c2f1711bf05c4fd6a984528eb2299b3fe11691325c4dd52fdfd250715b
+EBUILD libcupsfilters-2.0.0-r5.ebuild 1726 BLAKE2B 6f958ce33fd46210b93b14d628cf39d9efb8dfe9318da2921b5627c0400f2555d16e48d50493f523bf1b24de426127ee5375038c83661f411e04dbf8950fe831 SHA512 6bdddedb3fef61e8906a61cd0e01b387abff91513d9c3228d24be1e53507d6b3fc484b3e086b7ea23263741951e8925913c214c572c38679692e6b9658d42e56
+EBUILD libcupsfilters-2.1.0.ebuild 1604 BLAKE2B 842bad037c372e32e181ef8f4d2ae2acd4073c9d66e2eb3b54fa86389771bceaa33e887e2436f00c2bcb0e9c48d65b1eb00047a8146a0d7f7eeb7a75ce727430 SHA512 e5b00a54f2c2cc5d8e1f666acd377b0a513dda5c7af5f0b2631eb8153192f1bdda0dd0940432bd2d11fa0a3a6c440c1bfcaabcb8460a3ca2df9464dda87f50e7
+EBUILD libcupsfilters-2.1_beta1.ebuild 1659 BLAKE2B 6c80f532b72a4d77e4e6aca26b011dddcf1ca2e9334fcd1885055df3da07dd211d632e7416b54436de92f94625f43c1c9b956eb2b9cd6701e7a0b5ee26bf090c SHA512 657452c6cf74ed87b492aa21ee63e65ac0a37074908c043d6a52320acaeb72d58d2e2588aba20bb007c08d6df87c72a288f80315a420fdacaece2743e57de6e3
MISC metadata.xml 426 BLAKE2B 60d605203c938ba35e60bc4dfa121d6fb0223d70fdd1bdea4ed02693034a46ff039a580f5c0a5925aa3c4c33220243503096b8de233f6031447a6425a974182a SHA512 04811e0d82ce0365308b4391a33e03da423dc924cc7ff16a2eeedbdb51705b9a62cffe67d7e25b9221a0b511caaa3b19c184301fbecc59056a282a811ad9df7e
diff --git a/net-print/libcupsfilters/files/libcupsfilters-2.1_beta1-CVE-2024-47076.patch b/net-print/libcupsfilters/files/libcupsfilters-2.1_beta1-CVE-2024-47076.patch
new file mode 100644
index 000000000000..016d086ea2b1
--- /dev/null
+++ b/net-print/libcupsfilters/files/libcupsfilters-2.1_beta1-CVE-2024-47076.patch
@@ -0,0 +1,31 @@
+https://bugs.gentoo.org/940313
+https://github.com/OpenPrinting/libcupsfilters/commit/95576ec3d20c109332d14672a807353cdc551018
+
+From 95576ec3d20c109332d14672a807353cdc551018 Mon Sep 17 00:00:00 2001
+From: Zdenek Dohnal <zdohnal@redhat.com>
+Date: Thu, 26 Sep 2024 23:09:29 +0200
+Subject: [PATCH] cfGetPrinterAttributes5(): Validate response attributes
+ before return
+
+The destination can be corrupted or forged, so validate the response
+to strenghten security measures.
+
+Fixes CVE-2024-47076
+--- a/cupsfilters/ipp.c
++++ b/cupsfilters/ipp.c
+@@ -404,6 +404,14 @@ cfGetPrinterAttributes5(http_t *http_printer,
+ ippDelete(response2);
+ }
+ }
++
++ // Check if the response is valid
++ if (!ippValidateAttributes(response))
++ {
++ ippDelete(response);
++ response = NULL;
++ }
++
+ if (have_http == 0) httpClose(http_printer);
+ if (uri) free(uri);
+ return (response);
+
diff --git a/net-print/libcupsfilters/libcupsfilters-2.0.0-r3.ebuild b/net-print/libcupsfilters/libcupsfilters-2.0.0-r3.ebuild
index 6a44a004e2a7..b27e2fbd9e9d 100644
--- a/net-print/libcupsfilters/libcupsfilters-2.0.0-r3.ebuild
+++ b/net-print/libcupsfilters/libcupsfilters-2.0.0-r3.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://github.com/OpenPrinting/libcupsfilters/releases/download/${PV}/
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"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv sparc x86"
RESTRICT="!test? ( test )"
diff --git a/net-print/libcupsfilters/libcupsfilters-2.0.0-r5.ebuild b/net-print/libcupsfilters/libcupsfilters-2.0.0-r5.ebuild
index aee0c3bce0ec..04765a0c38fa 100644
--- a/net-print/libcupsfilters/libcupsfilters-2.0.0-r5.ebuild
+++ b/net-print/libcupsfilters/libcupsfilters-2.0.0-r5.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/OpenPrinting/libcupsfilters/releases/download/${PV}/
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
+KEYWORDS="amd64 arm arm64 hppa ~loong ppc ppc64 ~riscv sparc x86"
IUSE="dbus exif jpeg pdf +poppler +postscript png test tiff"
RESTRICT="!test? ( test )"
diff --git a/net-print/libcupsfilters/libcupsfilters-2.1.0.ebuild b/net-print/libcupsfilters/libcupsfilters-2.1.0.ebuild
new file mode 100644
index 000000000000..3d1bc26157a0
--- /dev/null
+++ b/net-print/libcupsfilters/libcupsfilters-2.1.0.ebuild
@@ -0,0 +1,71 @@
+# 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/_beta/b}/${P/_beta/b}.tar.xz"
+S="${WORKDIR}"/${P/_beta/b}
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~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 )
+"
+
+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.1_beta1.ebuild b/net-print/libcupsfilters/libcupsfilters-2.1_beta1.ebuild
new file mode 100644
index 000000000000..fa165e095afd
--- /dev/null
+++ b/net-print/libcupsfilters/libcupsfilters-2.1_beta1.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/_beta/b}/${P/_beta/b}.tar.xz"
+S="${WORKDIR}"/${P/_beta/b}
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~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}-CVE-2024-47076.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/libppd/Manifest b/net-print/libppd/Manifest
index 049d2ca5deb7..a2ba4d856528 100644
--- a/net-print/libppd/Manifest
+++ b/net-print/libppd/Manifest
@@ -1,4 +1,10 @@
AUX libppd-2.0.0-slibtool.patch 2191 BLAKE2B 2a88a48542355d5f4189685979cd1cc24a992c4ad6c803e28d2420e7f974b962050d186d5cd7ec1642d22ac200137fe74e143df2270259d30ee6e30ee05e28b5 SHA512 d169bfaf4dd40917b197aa6d00b4ad9b1ad5d010781d492205c2656621bcadc1792ca5f589be97f8b9e15f431820c8af1c40cae5bf7fbf9fd14df8377cb1484a
+AUX libppd-2.1_beta1-CVE-2024-47175.patch 22061 BLAKE2B 65b926bd5853f2f1cb6882412a21fc21e2a5440177efea99c5bdd887559f6fa5c941142c5525504459176504f18d11a90e89f786d23eb266d4c9df8a6832088b SHA512 59f4a0bb466b7cae7c5b38df7a3e3c761722defc395f8151ee80b840f67525743072a8df204514c51f6e687facb6ce32543c9f50bd123b5cddcaf7914dbf71dc
DIST libppd-2.0.0.tar.xz 580716 BLAKE2B 8505c5ab5b515104308624a8f78505343b894df08ab8ac2727d7bd82d0d65d256d22ecaf384b212d9a5c45d2a619a6311722a8c5ed954b7a8a9780477aedb458 SHA512 8be9e67552528606fd804ba13b05710938ed7d02316c1c902ee657bc0e5fade663ffacb5b032609a1c1fdc80d976e7e54d2ca2f71db83cb8fdcee6a371e6bad4
-EBUILD libppd-2.0.0.ebuild 1545 BLAKE2B e1cc087f4eb46fd1c489e5c9fe58c09d56369f9537232e48934f29c566b01c4bb164b699c89d4fb3658bdf6b16feba93726f03fd43c5d2acb01582524fb27f8a SHA512 f13b2ad4281893a929a6a228c0a67f1af9f281a8a6ab863c00e40a06b6c737b7bf1f1ed330da14be234525a88b63b40d2aa60976d972cc39a6d195d111f3bb6c
+DIST libppd-2.1.0.tar.xz 585288 BLAKE2B 87d325a659b98e2f489673fd2eb78daec83eafee990008380d852be17fbd990e4daa4a16bd5dc1e3a562040595b858c90d0747d815db0fb97fdccf97a3d4aa49 SHA512 06daf9149910298b2acd103c58f8bd345180219e42fab7dbc162b8370492e28b7bcecc6d72192fc8d053ec245a270d1901812662dd50687ff5b327a40ac0f475
+DIST libppd-2.1b1.tar.xz 583692 BLAKE2B f9889ba7758097d2f794b16bdd74758223036daa8e49b191d07789e36ad7e2d69693c9ebb0b89c1c52f23f90fee8b56e1532246da90b1898caf1c557a416c20c SHA512 2b1ab3444f9de4a856f116aae83fd2aaa61adec9862bdd6dcff5fe2672e593b1e69e4da3638994ac4762dcc0e2640c5e3cbf3af247017d3790f01ef10395f54a
+EBUILD libppd-2.0.0.ebuild 1539 BLAKE2B 98c5a87008151ab86a9aa4fcc788576063ae9d53d59acbbfbf44352b0e15d7fb8460a5395ca557bf5e995298a4c55c1f8f9156dc836368debc761518ae8e84fc SHA512 d3265c1eccc7ee79634e51f1aca38b3016c327434ff3b564195f73bd59853d1f80de6c968ed638eb7c8d3fbab4ff0d06a5b9aeadb6bfc30a91ed46d7016e51d3
+EBUILD libppd-2.1.0.ebuild 1556 BLAKE2B 8d767e461d5f2f77fcbdee876394625ba73dc062e20884d8f1f8554d0785e88113fad0aac62dcc63576290266981e1c8d282dc27ac75032585f2f06af088dbed SHA512 8c04eabc6ace06720a3c26839f83b790ebe44fb398aa6892f6c0b81591221dad693ab46960051e80d3d4166aecf94c5c50f2a51941402df0162840704b4f3be3
+EBUILD libppd-2.1_beta1-r1.ebuild 1604 BLAKE2B efac40235db741e0ffed8aeb911852b677620415fce0cdd925a97301596a2f5d9242bd99fbd10a6b01d21dab22acd93ef5264e903faf6018451c017b9d073f8d SHA512 549ad4e9c6923f28ba0f8e441e59226c4a9b19ffc571ac243e2900285997ea51056226796e027a4d73e2cc286e4990cd3bb01cb4b61868a461f4e7f240e44047
+EBUILD libppd-2.1_beta1.ebuild 1556 BLAKE2B 8d767e461d5f2f77fcbdee876394625ba73dc062e20884d8f1f8554d0785e88113fad0aac62dcc63576290266981e1c8d282dc27ac75032585f2f06af088dbed SHA512 8c04eabc6ace06720a3c26839f83b790ebe44fb398aa6892f6c0b81591221dad693ab46960051e80d3d4166aecf94c5c50f2a51941402df0162840704b4f3be3
MISC metadata.xml 440 BLAKE2B 8cc1e3fa25d2c12efb0253a37a0dedb484fcac5930deacd37bc09534e9210e72e58669a07efc0d40612a428d190b852064f6175083c852a8b3a4153101483905 SHA512 79801ac1a34f4e5fc46bd8c45c638dccde3168c701dfaffb51d626405e77fe0e8fa190b32c0b76150e51197223363dea0163086f172b0dccccd0c94fc5cb2d0b
diff --git a/net-print/libppd/files/libppd-2.1_beta1-CVE-2024-47175.patch b/net-print/libppd/files/libppd-2.1_beta1-CVE-2024-47175.patch
new file mode 100644
index 000000000000..60817509cdb3
--- /dev/null
+++ b/net-print/libppd/files/libppd-2.1_beta1-CVE-2024-47175.patch
@@ -0,0 +1,560 @@
+https://bugs.gentoo.org/940314
+https://github.com/OpenPrinting/libppd/commit/d681747ebf12602cb426725eb8ce2753211e2477
+
+From d681747ebf12602cb426725eb8ce2753211e2477 Mon Sep 17 00:00:00 2001
+From: Zdenek Dohnal <zdohnal@redhat.com>
+Date: Thu, 26 Sep 2024 23:12:14 +0200
+Subject: [PATCH] Prevent PPD generation based on invalid IPP response
+
+Author: Mike Sweet
+Minor fixes: Zdenek Dohnal
+
+Fixes CVE-2024-47175
+--- a/ppd/ppd-cache.c
++++ b/ppd/ppd-cache.c
+@@ -3434,7 +3435,7 @@ ppdCacheGetBin(
+
+ //
+ // Range check input...
+-
++
+
+ if (!pc || !output_bin)
+ return (NULL);
+@@ -3935,7 +3936,7 @@ ppdCacheGetPageSize(
+ {
+ //
+ // Check not only the base size (like "A4") but also variants (like
+- // "A4.Borderless"). We check only the margins and orientation but do
++ // "A4.Borderless"). We check only the margins and orientation but do
+ // not re-check the size.
+ //
+
+@@ -4776,7 +4777,7 @@ ppdPwgPpdizeName(const char *ipp, // I - IPP keyword
+ *end; // End of name buffer
+
+
+- if (!ipp)
++ if (!ipp || !_ppd_isalnum(*ipp))
+ {
+ *name = '\0';
+ return;
+@@ -4786,13 +4787,19 @@ ppdPwgPpdizeName(const char *ipp, // I - IPP keyword
+
+ for (ptr = name + 1, end = name + namesize - 1; *ipp && ptr < end;)
+ {
+- if (*ipp == '-' && _ppd_isalnum(ipp[1]))
++ if (*ipp == '-' && isalnum(ipp[1]))
+ {
+ ipp ++;
+ *ptr++ = (char)toupper(*ipp++ & 255);
+ }
+- else
++ else if (*ipp == '_' || *ipp == '.' || *ipp == '-' || isalnum(*ipp))
++ {
+ *ptr++ = *ipp++;
++ }
++ else
++ {
++ ipp ++;
++ }
+ }
+
+ *ptr = '\0';
+--- a/ppd/ppd-generator.c
++++ b/ppd/ppd-generator.c
+@@ -71,6 +72,7 @@ typedef struct _ppd_size_s // **** Media Size (cups_size_t of lib
+
+ static int http_connect(http_t **http, const char *url, char *resource,
+ size_t ressize);
++static void ppd_put_string(cups_file_t *fp, cups_lang_t *lang, const char *ppd_option, const char *ppd_choice, const char *pwg_msgid);
+
+
+ //
+@@ -80,7 +82,7 @@ static int http_connect(http_t **http, const char *url, char *resource,
+ // than CUPS 2.2.x. We have also an additional test and development
+ // platform for this code. Taken from cups/ppd-cache.c,
+ // cups/string-private.h, cups/string.c.
+-//
++//
+ // The advantage of PPD generation instead of working with System V
+ // interface scripts is that the print dialogs of the clients do not
+ // need to ask the printer for its options via IPP. So we have access
+@@ -144,7 +146,7 @@ char ppdgenerator_msg[1024];
+ // IPP 1.x legacy)
+ //
+
+-char * // O - PPD filename or NULL
++char * // O - PPD filename or NULL
+ // on error
+ ppdCreatePPDFromIPP(char *buffer, // I - Filename buffer
+ size_t bufsize, // I - Size of filename
+@@ -195,7 +197,7 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ cups_array_t *conflicts, // I - Array of
+ // constraints
+ cups_array_t *sizes, // I - Media sizes we've
+- // added
++ // added
+ char* default_pagesize, // I - Default page size
+ const char *default_cluster_color, // I - cluster def
+ // color (if cluster's
+@@ -207,6 +209,7 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ size_t status_msg_size) // I - Size of status
+ // message buffer
+ {
++ cups_lang_t *lang; // Localization language
+ cups_file_t *fp; // PPD file
+ cups_array_t *printer_sizes; // Media sizes we've added
+ _ppd_size_t *size; // Current media size
+@@ -219,9 +222,10 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ ipp_t *media_col, // Media collection
+ *media_size; // Media size collection
+ char make[256], // Make and model
+- *model, // Model name
++ *mptr, // Pointer into make and model
+ ppdname[PPD_MAX_NAME];
+ // PPD keyword
++ const char *model; // Model name
+ int i, j, // Looping vars
+ count = 0, // Number of values
+ bottom, // Largest bottom margin
+@@ -303,6 +307,68 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ return (NULL);
+ }
+
++ //
++ // Get a sanitized make and model...
++ //
++
++ if ((attr = ippFindAttribute(supported, "printer-make-and-model", IPP_TAG_TEXT)) != NULL && ippValidateAttribute(attr))
++ {
++ // Sanitize the model name to only contain PPD-safe characters.
++ strlcpy(make, ippGetString(attr, 0, NULL), sizeof(make));
++
++ for (mptr = make; *mptr; mptr ++)
++ {
++ if (*mptr < ' ' || *mptr >= 127 || *mptr == '\"')
++ {
++ // Truncate the make and model on the first bad character...
++ *mptr = '\0';
++ break;
++ }
++ }
++
++ while (mptr > make)
++ {
++ // Strip trailing whitespace...
++ mptr --;
++ if (*mptr == ' ')
++ *mptr = '\0';
++ }
++
++ if (!make[0])
++ {
++ // Use a default make and model if nothing remains...
++ strlcpy(make, "Unknown", sizeof(make));
++ }
++ }
++ else
++ {
++ // Use a default make and model...
++ strlcpy(make, "Unknown", sizeof(make));
++ }
++
++ if (!strncasecmp(make, "Hewlett Packard ", 16) || !strncasecmp(make, "Hewlett-Packard ", 16))
++ {
++ // Normalize HP printer make and model...
++ model = make + 16;
++ strlcpy(make, "HP", sizeof(make));
++
++ if (!strncasecmp(model, "HP ", 3))
++ model += 3;
++ }
++ else if ((mptr = strchr(make, ' ')) != NULL)
++ {
++ // Separate "MAKE MODEL"...
++ while (*mptr && *mptr == ' ')
++ *mptr++ = '\0';
++
++ model = mptr;
++ }
++ else
++ {
++ // No separate model name...
++ model = "Printer";
++ }
++
+ //
+ // Standard stuff for PPD file...
+ //
+@@ -331,25 +397,6 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ }
+ }
+
+- if ((attr = ippFindAttribute(supported, "printer-make-and-model",
+- IPP_TAG_TEXT)) != NULL)
+- strlcpy(make, ippGetString(attr, 0, NULL), sizeof(make));
+- else if (make_model && make_model[0] != '\0')
+- strlcpy(make, make_model, sizeof(make));
+- else
+- strlcpy(make, "Unknown Printer", sizeof(make));
+-
+- if (!strncasecmp(make, "Hewlett Packard ", 16) ||
+- !strncasecmp(make, "Hewlett-Packard ", 16))
+- {
+- model = make + 16;
+- strlcpy(make, "HP", sizeof(make));
+- }
+- else if ((model = strchr(make, ' ')) != NULL)
+- *model++ = '\0';
+- else
+- model = make;
+-
+ cupsFilePrintf(fp, "*Manufacturer: \"%s\"\n", make);
+ cupsFilePrintf(fp, "*ModelName: \"%s %s\"\n", make, model);
+ cupsFilePrintf(fp, "*Product: \"(%s %s)\"\n", make, model);
+@@ -445,21 +492,19 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ }
+ cupsFilePuts(fp, "\"\n");
+
+- if ((attr = ippFindAttribute(supported, "printer-more-info", IPP_TAG_URI)) !=
+- NULL)
++ if ((attr = ippFindAttribute(supported, "printer-more-info", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
+ cupsFilePrintf(fp, "*APSupplies: \"%s\"\n", ippGetString(attr, 0, NULL));
+
+- if ((attr = ippFindAttribute(supported, "printer-charge-info-uri",
+- IPP_TAG_URI)) != NULL)
+- cupsFilePrintf(fp, "*cupsChargeInfoURI: \"%s\"\n", ippGetString(attr, 0,
+- NULL));
++ if ((attr = ippFindAttribute(supported, "printer-charge-info-uri", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
++ cupsFilePrintf(fp, "*cupsChargeInfoURI: \"%s\"\n", ippGetString(attr, 0, NULL));
+
+ // Message catalogs for UI strings
++ lang = cupsLangDefault();
+ opt_strings_catalog = cfCatalogOptionArrayNew();
+ cfCatalogLoad(NULL, NULL, opt_strings_catalog);
+
+ if ((attr = ippFindAttribute(supported, "printer-strings-uri",
+- IPP_TAG_URI)) != NULL)
++ IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
+ {
+ printer_opt_strings_catalog = cfCatalogOptionArrayNew();
+ cfCatalogLoad(ippGetString(attr, 0, NULL), NULL,
+@@ -512,7 +557,7 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ response = cupsDoRequest(http, request, resource);
+
+ if ((attr = ippFindAttribute(response, "printer-strings-uri",
+- IPP_TAG_URI)) != NULL)
++ IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
+ cupsFilePrintf(fp, "*cupsStringsURI %s: \"%s\"\n", keyword,
+ ippGetString(attr, 0, NULL));
+
+@@ -538,13 +583,10 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ IPP_TAG_BOOLEAN), 0))
+ cupsFilePuts(fp, "*cupsJobAccountingUserId: True\n");
+
+- if ((attr = ippFindAttribute(supported, "printer-privacy-policy-uri",
+- IPP_TAG_URI)) != NULL)
+- cupsFilePrintf(fp, "*cupsPrivacyURI: \"%s\"\n",
+- ippGetString(attr, 0, NULL));
++ if ((attr = ippFindAttribute(supported, "printer-privacy-policy-uri", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
++ cupsFilePrintf(fp, "*cupsPrivacyURI: \"%s\"\n", ippGetString(attr, 0, NULL));
+
+- if ((attr = ippFindAttribute(supported, "printer-mandatory-job-attributes",
+- IPP_TAG_KEYWORD)) != NULL)
++ if ((attr = ippFindAttribute(supported, "printer-mandatory-job-attributes", IPP_TAG_KEYWORD)) != NULL && ippValidateAttribute(attr))
+ {
+ char prefix = '\"'; // Prefix for string
+
+@@ -564,8 +606,7 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ cupsFilePuts(fp, "\"\n");
+ }
+
+- if ((attr = ippFindAttribute(supported, "printer-requested-job-attributes",
+- IPP_TAG_KEYWORD)) != NULL)
++ if ((attr = ippFindAttribute(supported, "printer-requested-job-attributes", IPP_TAG_KEYWORD)) != NULL && ippValidateAttribute(attr))
+ {
+ char prefix = '\"'; // Prefix for string
+
+@@ -684,7 +725,7 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ }
+
+ //
+- // Fax
++ // Fax
+ //
+
+ if (is_fax)
+@@ -734,21 +775,21 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ else if (cupsArrayFind(pdl_list, "image/urf") &&
+ (ippFindAttribute(supported, "urf-supported", IPP_TAG_KEYWORD) != NULL))
+ {
+- int resStore = 0; // Variable for storing the no. of resolutions in the resolution array
++ int resStore = 0; // Variable for storing the no. of resolutions in the resolution array
+ int resArray[__INT16_MAX__]; // Creating a resolution array supporting a maximum of 32767 resolutions.
+ int lowdpi = 0, middpi = 0, hidpi = 0; // Lower , middle and higher resolution
+ if ((attr = ippFindAttribute(supported, "urf-supported",
+ IPP_TAG_KEYWORD)) != NULL)
+ {
+ for (int i = 0, count = ippGetCount(attr); i < count; i ++)
+- {
++ {
+ const char *rs = ippGetString(attr, i, NULL); // RS values
+- const char *rsCopy = ippGetString(attr, i, NULL); // RS values(copy)
++ const char *rsCopy = ippGetString(attr, i, NULL); // RS values(copy)
+ if (strncasecmp(rs, "RS", 2)) // Comparing attributes to have RS in
+ // the beginning to indicate the
+ // resolution feature
+ continue;
+- int resCount = 0; // Using a count variable which can be reset
++ int resCount = 0; // Using a count variable which can be reset
+ while (*rsCopy != '\0') // Parsing through the copy pointer to
+ // determine the no. of resolutions
+ {
+@@ -846,7 +887,7 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ formatfound = 1;
+ is_apple = 1;
+ }
+- }
++ }
+ }
+ }
+ }
+@@ -924,7 +965,7 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ if (manual_copies == 1)
+ cupsFilePuts(fp, "*cupsManualCopies: True\n");
+
+- // No resolution requirements by any of the supported PDLs?
++ // No resolution requirements by any of the supported PDLs?
+ // Use "printer-resolution-supported" attribute
+ if (common_res == NULL)
+ {
+@@ -1042,7 +1083,7 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ //
+ // PageSize/PageRegion/ImageableArea/PaperDimension
+ //
+-
++
+ cfGenerateSizes(supported, CF_GEN_SIZES_DEFAULT, &printer_sizes, &defattr,
+ NULL, NULL, NULL, NULL, NULL, NULL,
+ &min_width, &min_length,
+@@ -1421,15 +1462,15 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ if (!strcmp(sources[j], keyword))
+ break;
+ if (j >= 0)
+- cupsFilePrintf(fp, "*InputSlot %s%s%s: \"<</MediaPosition %d>>setpagedevice\"\n",
+- ppdname,
+- (human_readable ? "/" : ""),
+- (human_readable ? human_readable : ""), j);
++ {
++ cupsFilePrintf(fp, "*InputSlot %s: \"<</MediaPosition %d>>setpagedevice\"\n", ppdname, j);
++ ppd_put_string(fp, lang, "InputSlot", ppdname, human_readable);
++ }
+ else
+- cupsFilePrintf(fp, "*InputSlot %s%s%s: \"\"\n",
+- ppdname,
+- (human_readable ? "/" : ""),
+- (human_readable ? human_readable : ""));
++ {
++ cupsFilePrintf(fp, "*InputSlot %s%s%s:\"\"\n", ppdname, human_readable ? "/" : "", human_readable ? human_readable : "");
++ ppd_put_string(fp, lang, "InputSlot", ppdname, human_readable);
++ }
+ }
+ cupsFilePuts(fp, "*CloseUI: *InputSlot\n");
+ }
+@@ -1464,11 +1505,8 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ human_readable = cfCatalogLookUpChoice((char *)keyword, "media-type",
+ opt_strings_catalog,
+ printer_opt_strings_catalog);
+- cupsFilePrintf(fp, "*MediaType %s%s%s: \"<</MediaType(%s)>>setpagedevice\"\n",
+- ppdname,
+- (human_readable ? "/" : ""),
+- (human_readable ? human_readable : ""),
+- ppdname);
++ cupsFilePrintf(fp, "*MediaType %s: \"<</MediaType(%s)>>setpagedevice\"\n", ppdname, ppdname);
++ ppd_put_string(fp, lang, "MediaType", ppdname, human_readable);
+ }
+ cupsFilePuts(fp, "*CloseUI: *MediaType\n");
+ }
+@@ -1791,10 +1829,8 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ human_readable = cfCatalogLookUpChoice((char *)keyword, "output-bin",
+ opt_strings_catalog,
+ printer_opt_strings_catalog);
+- cupsFilePrintf(fp, "*OutputBin %s%s%s: \"\"\n",
+- ppdname,
+- (human_readable ? "/" : ""),
+- (human_readable ? human_readable : ""));
++ cupsFilePrintf(fp, "*OutputBin %s: \"\"\n", ppdname);
++ ppd_put_string(fp, lang, "OutputBin", ppdname, human_readable);
+ outputorderinfofound = 0;
+ faceupdown = 1;
+ firsttolast = 1;
+@@ -1848,7 +1884,7 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+
+ //
+ // Finishing options...
+- //
++ //
+
+ if ((attr = ippFindAttribute(supported, "finishings-supported",
+ IPP_TAG_ENUM)) != NULL)
+@@ -1973,9 +2009,8 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ human_readable = cfCatalogLookUpChoice(buf, "finishings",
+ opt_strings_catalog,
+ printer_opt_strings_catalog);
+- cupsFilePrintf(fp, "*StapleLocation %s%s%s: \"\"\n", ppd_keyword,
+- (human_readable ? "/" : ""),
+- (human_readable ? human_readable : ""));
++ cupsFilePrintf(fp, "*StapleLocation %s: \"\"\n", ppd_keyword);
++ ppd_put_string(fp, lang, "StapleLocation", ppd_keyword, human_readable);
+ cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*StapleLocation %s\"\n",
+ value, keyword, ppd_keyword);
+ }
+@@ -2065,9 +2100,8 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ human_readable = cfCatalogLookUpChoice(buf, "finishings",
+ opt_strings_catalog,
+ printer_opt_strings_catalog);
+- cupsFilePrintf(fp, "*FoldType %s%s%s: \"\"\n", ppd_keyword,
+- (human_readable ? "/" : ""),
+- (human_readable ? human_readable : ""));
++ cupsFilePrintf(fp, "*FoldType %s: \"\"\n", ppd_keyword);
++ ppd_put_string(fp, lang, "FoldType", ppd_keyword, human_readable);
+ cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*FoldType %s\"\n",
+ value, keyword, ppd_keyword);
+ }
+@@ -2164,9 +2198,8 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ human_readable = cfCatalogLookUpChoice(buf, "finishings",
+ opt_strings_catalog,
+ printer_opt_strings_catalog);
+- cupsFilePrintf(fp, "*PunchMedia %s%s%s: \"\"\n", ppd_keyword,
+- (human_readable ? "/" : ""),
+- (human_readable ? human_readable : ""));
++ cupsFilePrintf(fp, "*PunchMedia %s: \"\"\n", ppd_keyword);
++ ppd_put_string(fp, lang, "PunchMedia", ppd_keyword, human_readable);
+ cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*PunchMedia %s\"\n",
+ value, keyword, ppd_keyword);
+ }
+@@ -2257,9 +2290,8 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ human_readable = cfCatalogLookUpChoice(buf, "finishings",
+ opt_strings_catalog,
+ printer_opt_strings_catalog);
+- cupsFilePrintf(fp, "*CutMedia %s%s%s: \"\"\n", ppd_keyword,
+- (human_readable ? "/" : ""),
+- (human_readable ? human_readable : ""));
++ cupsFilePrintf(fp, "*CutMedia %s: \"\"\n", ppd_keyword);
++ ppd_put_string(fp, lang, "CutMedia", ppd_keyword, human_readable);
+ cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*CutMedia %s\"\n",
+ value, keyword, ppd_keyword);
+ }
+@@ -2283,7 +2315,7 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ cupsFilePrintf(fp, "*OpenUI *cupsFinishingTemplate/%s: PickOne\n",
+ (human_readable ? human_readable : "Finishing Template"));
+ cupsFilePuts(fp, "*OrderDependency: 10 AnySetup *cupsFinishingTemplate\n");
+- cupsFilePuts(fp, "*DefaultcupsFinishingTemplate: none\n");
++ cupsFilePuts(fp, "*DefaultcupsFinishingTemplate: None\n");
+ human_readable = cfCatalogLookUpChoice("3", "finishings",
+ opt_strings_catalog,
+ printer_opt_strings_catalog);
+@@ -2314,8 +2346,9 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ printer_opt_strings_catalog);
+ if (human_readable == NULL)
+ human_readable = (char *)keyword;
+- cupsFilePrintf(fp, "*cupsFinishingTemplate %s/%s: \"\n", keyword,
+- human_readable);
++ ppdPwgPpdizeName(keyword, ppdname, sizeof(ppdname));
++ cupsFilePrintf(fp, "*cupsFinishingTemplate %s: \"\n", ppdname);
++ ppd_put_string(fp, lang, "cupsFinishingTemplate", ppdname, human_readable);
+ for (finishing_attr = ippGetFirstAttribute(finishing_col); finishing_attr;
+ finishing_attr = ippGetNextAttribute(finishing_col)) {
+ if (ippGetValueTag(finishing_attr) == IPP_TAG_BEGIN_COLLECTION) {
+@@ -2579,14 +2612,14 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ if (!preset || !preset_name)
+ continue;
+
+- if ((localized_name =
++ ppdPwgPpdizeName(preset_name, ppdname, sizeof(ppdname));
++
++ localized_name =
+ cfCatalogLookUpOption((char *)preset_name,
+ opt_strings_catalog,
+- printer_opt_strings_catalog)) == NULL)
+- cupsFilePrintf(fp, "*APPrinterPreset %s: \"\n", preset_name);
+- else
+- cupsFilePrintf(fp, "*APPrinterPreset %s/%s: \"\n", preset_name,
+- localized_name);
++ printer_opt_strings_catalog);
++ cupsFilePrintf(fp, "*APPrinterPreset %s: \"\n", ppdname);
++ ppd_put_string(fp, lang, "APPrinterPreset", ppdname, localized_name);
+
+ for (member = ippGetFirstAttribute(preset); member;
+ member = ippGetNextAttribute(preset))
+@@ -2635,7 +2668,10 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ ippGetString(ippFindAttribute(fin_col,
+ "finishing-template",
+ IPP_TAG_ZERO), 0, NULL)) != NULL)
+- cupsFilePrintf(fp, "*cupsFinishingTemplate %s\n", keyword);
++ {
++ ppdPwgPpdizeName(keyword, ppdname, sizeof(ppdname));
++ cupsFilePrintf(fp, "*cupsFinishingTemplate %s\n", ppdname);
++ }
+ }
+ }
+ else if (!strcmp(member_name, "media"))
+@@ -2674,7 +2710,7 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ NULL)) != NULL)
+ {
+ ppdPwgPpdizeName(keyword, ppdname, sizeof(ppdname));
+- cupsFilePrintf(fp, "*InputSlot %s\n", keyword);
++ cupsFilePrintf(fp, "*InputSlot %s\n", ppdname);
+ }
+
+ if ((keyword = ippGetString(ippFindAttribute(media_col, "media-type",
+@@ -2682,7 +2718,7 @@ ppdCreatePPDFromIPP2(char *buffer, // I - Filename buffer
+ NULL)) != NULL)
+ {
+ ppdPwgPpdizeName(keyword, ppdname, sizeof(ppdname));
+- cupsFilePrintf(fp, "*MediaType %s\n", keyword);
++ cupsFilePrintf(fp, "*MediaType %s\n", ppdname);
+ }
+ }
+ else if (!strcmp(member_name, "print-quality"))
+@@ -2832,3 +2868,38 @@ http_connect(http_t **http, // IO - Current HTTP connection
+
+ return (*http != NULL);
+ }
++
++
++/*
++ * 'ppd_put_strings()' - Write localization attributes to a PPD file.
++ */
++
++static void
++ppd_put_string(cups_file_t *fp, /* I - PPD file */
++ cups_lang_t *lang, /* I - Language */
++ const char *ppd_option,/* I - PPD option */
++ const char *ppd_choice,/* I - PPD choice */
++ const char *text) /* I - Localized text */
++{
++ if (!text)
++ return;
++
++ // Add the first line of localized text...
++#if CUPS_VERSION_MAJOR > 2
++ cupsFilePrintf(fp, "*%s.%s %s/", cupsLangGetName(lang), ppd_option, ppd_choice);
++#else
++ cupsFilePrintf(fp, "*%s.%s %s/", lang->language, ppd_option, ppd_choice);
++#endif // CUPS_VERSION_MAJOR > 2
++
++ while (*text && *text != '\n')
++ {
++ // Escape ":" and "<"...
++ if (*text == ':' || *text == '<')
++ cupsFilePrintf(fp, "<%02X>", *text);
++ else
++ cupsFilePutChar(fp, *text);
++
++ text ++;
++ }
++ cupsFilePuts(fp, ": \"\"\n");
++}
+
diff --git a/net-print/libppd/libppd-2.0.0.ebuild b/net-print/libppd/libppd-2.0.0.ebuild
index 431deb11dbfc..dff811230b6f 100644
--- a/net-print/libppd/libppd-2.0.0.ebuild
+++ b/net-print/libppd/libppd-2.0.0.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://github.com/OpenPrinting/libppd/releases/download/${PV}/${P}.tar
LICENSE="Apache-2.0"
SLOT="0"
IUSE="+postscript +poppler"
-KEYWORDS="amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
+KEYWORDS="amd64 arm arm64 hppa ~loong ppc ppc64 ~riscv sparc x86"
# pdftops has various possible implementations, but the default
# really needs to be decent
diff --git a/net-print/libppd/libppd-2.1.0.ebuild b/net-print/libppd/libppd-2.1.0.ebuild
new file mode 100644
index 000000000000..577c98a38e63
--- /dev/null
+++ b/net-print/libppd/libppd-2.1.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit libtool
+
+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/_beta/b}/${P/_beta/b}.tar.xz"
+S="${WORKDIR}"/${P/_beta/b}
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="+postscript +poppler"
+
+# 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
+ sys-libs/zlib
+ 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
+"
+
+src_prepare() {
+ default
+ elibtoolize
+}
+
+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/libppd-2.1_beta1-r1.ebuild b/net-print/libppd/libppd-2.1_beta1-r1.ebuild
new file mode 100644
index 000000000000..29d10e2d9447
--- /dev/null
+++ b/net-print/libppd/libppd-2.1_beta1-r1.ebuild
@@ -0,0 +1,65 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit libtool
+
+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/_beta/b}/${P/_beta/b}.tar.xz"
+S="${WORKDIR}"/${P/_beta/b}
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~sparc x86"
+IUSE="+postscript +poppler"
+
+# 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
+ sys-libs/zlib
+ 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}-CVE-2024-47175.patch
+)
+
+src_prepare() {
+ default
+ elibtoolize
+}
+
+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/libppd-2.1_beta1.ebuild b/net-print/libppd/libppd-2.1_beta1.ebuild
new file mode 100644
index 000000000000..577c98a38e63
--- /dev/null
+++ b/net-print/libppd/libppd-2.1_beta1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit libtool
+
+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/_beta/b}/${P/_beta/b}.tar.xz"
+S="${WORKDIR}"/${P/_beta/b}
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="+postscript +poppler"
+
+# 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
+ sys-libs/zlib
+ 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
+"
+
+src_prepare() {
+ default
+ elibtoolize
+}
+
+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
+}