diff --git a/extra/cups/0002_do_not_set_RGB_default_on_monochrome_printers.patch b/extra/cups/0002_do_not_set_RGB_default_on_monochrome_printers.patch new file mode 100644 index 000000000..2b10c1f81 --- /dev/null +++ b/extra/cups/0002_do_not_set_RGB_default_on_monochrome_printers.patch @@ -0,0 +1,33 @@ +From ebf3bb82593e5f49093ed7b9e52452333240d225 Mon Sep 17 00:00:00 2001 +From: Till Kamppeter +Date: Wed, 15 Feb 2023 22:01:05 +0100 +Subject: [PATCH] In auto-generated PPDs do not set RGB default on mono + printers + +When a PPD for a driverless printer is generated by the +_ppdCreateFromIPP2() function and the get-printer-attributes IPP +response gives "print-color-mode-default=auto" the PPD's default +setting for "ColorModel" is always "RGB", even on monochrome printers, +which makes printing fail on most devices. + +Now we ignore the "print-color-mode-default" if set to "auto" and +proceed as if no default was given, finding the default by selecting +the most desirable of the existing "ColorModel" choices. +--- + cups/ppd-cache.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/cups/ppd-cache.c b/cups/ppd-cache.c +index 3c53f510d..2489ee313 100644 +--- a/cups/ppd-cache.c ++++ b/cups/ppd-cache.c +@@ -4129,7 +4129,8 @@ _ppdCreateFromIPP2( + int wrote_color = 0; + const char *default_color = NULL; /* Default */ + +- if ((keyword = ippGetString(defattr, 0, NULL)) != NULL) ++ if ((keyword = ippGetString(defattr, 0, NULL)) != NULL && ++ strcmp(keyword, "auto")) + { + if (!strcmp(keyword, "bi-level")) + default_color = "FastGray"; diff --git a/extra/cups/PKGBUILD b/extra/cups/PKGBUILD index a8faaecc0..50b23f394 100644 --- a/extra/cups/PKGBUILD +++ b/extra/cups/PKGBUILD @@ -6,7 +6,7 @@ pkgbase="cups" pkgname=('libcups' 'cups') pkgver=2.4.2 -pkgrel=6 +pkgrel=7 epoch=1 arch=('x86_64') options=(!distcc) @@ -24,6 +24,7 @@ source=(https://github.com/OpenPrinting/cups/releases/download/v${pkgver}/cups-$ cups-freebind.patch guid.patch 0001_Fix_OpenSSL_crash_bug.patch + 0002_do_not_set_RGB_default_on_monochrome_printers.patch ) sha256sums=('f03ccb40b087d1e30940a40e0141dcbba263f39974c20eb9f2521066c9c6c908' 'SKIP' @@ -33,7 +34,8 @@ sha256sums=('f03ccb40b087d1e30940a40e0141dcbba263f39974c20eb9f2521066c9c6c908' 'f0b15192952c151b1843742c87850ff3a7d0f3ba5dd236ed16623ef908472ad7' '3385047b9ac8a7b13aeb8f0ca55d15f793ce7283516db0155fe28a67923c592d' '0bf6a75ba1b051771f155d9a5d36b307a6d40c6857d645b250fe93f3fb713474' - '632faf08bfd1863e9ad6807aff766983e84030a0e4df441167f17de7266ca152') + '632faf08bfd1863e9ad6807aff766983e84030a0e4df441167f17de7266ca152' + 'f7e2c6dfcdf882f0f54c95728a3e2c63309ee73f9d2efc8e5b8a758fb2c7f429') #validpgpkeys=('3737FD0D0E63B30172440D2DDBA3A7AB08D76223') # CUPS.org (CUPS.org PGP key) #validpgpkeys+=('45D083946E3035282B3CCA9AF434104235DA97EB') # "CUPS.org " #validpgpkeys+=('845464660B686AAB36540B6F999559A027815955') # "Michael R Sweet " @@ -60,6 +62,10 @@ prepare() { # Fix OpenSSL crash bug - "tls" pointer wasn't cleared after patch -Np1 -i "${srcdir}"/0001_Fix_OpenSSL_crash_bug.patch + # In auto-generated PPDs do not set RGB default on mono printers - FS#78150 + # https://github.com/OpenPrinting/cups/commit/ebf3bb82593e5f49093ed7b9e52452333240d225 + patch -Np1 -i "${srcdir}"/0002_do_not_set_RGB_default_on_monochrome_printers.patch + # Rebuild configure script aclocal -I config-scripts autoconf -I config-scripts diff --git a/extra/cups/keys/pgp/7082A0A50A2E92640F3880E0E4522DCC9B246FF7.asc b/extra/cups/keys/pgp/7082A0A50A2E92640F3880E0E4522DCC9B246FF7.asc new file mode 100644 index 000000000..388b6a790 --- /dev/null +++ b/extra/cups/keys/pgp/7082A0A50A2E92640F3880E0E4522DCC9B246FF7.asc @@ -0,0 +1,14 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mDMEYfKEjRYJKwYBBAHaRw8BAQdAJggn9NALyWqrgrFGPJ9RvPb7wYbskxKRKQcL +v+8Hpbq0QVpkZW5layBEb2huYWwgKFRoZSBvbGQgNEQ0MjI3RDcga2V5IHJldm9r +ZWQpIDx6ZG9obmFsQHJlZGhhdC5jb20+iJQEExYKADwWIQRwgqClCi6SZA84gODk +Ui3MmyRv9wUCYfKEjQIbAwULCQgHAgMiAgEGFQoJCAsCBBYCAwECHgcCF4AACgkQ +5FItzJskb/fbUQEAm6R78JoZSIOpu68gtUUp1qbfDdsfoQkbdyfws/myB6gA/A6/ +9QiIk50DNCmBTisZk5CFP51YNvwnyxafmE3cDn8GuDgEYfKEjRIKKwYBBAGXVQEF +AQEHQF6Qgj5UQqUdvqvnDqygQ6Vm59nRGHbPVDTwendtM5cCAwEIB4h4BBgWCgAg +FiEEcIKgpQoukmQPOIDg5FItzJskb/cFAmHyhI0CGwwACgkQ5FItzJskb/e2CwD/ +SyRi/I5Il5XY5VXEL/eBsnNvvtaO0T10V4/vBMiDb+sBAK3YmRl6WStfRiEvMXQv +OhMT+sEjx6ufQXkuPeXHvrgK +=vSEm +-----END PGP PUBLIC KEY BLOCK-----