Mailing List Archive

[RFC PATCH 00/10] Upgrading cups-filters to 2.0.0
I've been working with Sam for a bit on this update. It's a bit of a
fiddly one, as a lot of stuff has changed upstream. It's probably best
described via my proposed news post. Please review. It would also be
quite nice to get a bit of testing -- I'm especially concerned about
cups-browsed's testsuite, so if anyone has any ideas how to actually run
it, that would be fantastic. I do not use cups-browsed myself...

News post:
-------------------------------------

Title: CUPS no longer directly depends on its filters
Author: Eli Schwartz <eschwartz93@gmail.com>
Posted: 2023-11-20
Revision: 1
News-Item-Format: 2.0
Display-If-Installed: <=net-print/cups-2.4.7-r1

Reasons
=======

Historically, net-print/cups has both depended on and been a dependency of
net-print/cups-filters. The latter is required for usability of a CUPS
printing setup, but also must build against the former's libraries. This
results in an ugly dependency cycle, and forcing the entire CUPS printing
setup wherever USE=cups is enabled on a framework.

Current upstream work on CUPS has focused on modularizing the codebase. There
are now several packages, and there will be more in the future. Installing
net-print/cups-filters is no longer sufficient to ensure all components are
installed.

In the future, when CUPS v3 is released, filters will be exclusive to legacy
printers, and largely replaced with IPP Everywhere.[1]

A more future-proof way to install a CUPS production printing setup is needed.

User Action Required
=======

cups-filters is required for current versions of CUPS. To prevent depcleaning
if you are a CUPS user (and it was not installed just as a dependency for
something else):

emerge net-print/cups-meta

If cups-browsed support is desired, add the following package.use:

net-print/cups-meta browsed


[1] https://openprinting.github.io/current/#the-new-architecture-for-printing-and-scanning



Eli Schwartz (10):
net-print/libcupsfilters: new package, add 2.0.0
net-print/libppd: new package, add 2.0.0
net-print/cups-filters: add 2.0.0
net-print/cups-browsed: new package, add 2.0.0
net-print/cups-meta: new package, add 1
net-print/cups: drop cyclic dependency on cups-filters
net-print/cups: re-enable tests
net-print/cups: avoid running unittests in src_compile
net-print/cups-browsed: restrict tests
net-print/cups-filters: restrict tests

net-print/cups-browsed/Manifest | 1 +
.../cups-browsed/cups-browsed-2.0.0.ebuild | 82 +++++
...d.c-Fix-build-with-avahi-disabled-20.patch | 34 ++
net-print/cups-browsed/metadata.xml | 11 +
net-print/cups-filters/Manifest | 1 +
.../cups-filters/cups-filters-2.0.0.ebuild | 54 +++
net-print/cups-meta/cups-meta-1.ebuild | 21 ++
net-print/cups-meta/metadata.xml | 9 +
net-print/cups/cups-2.4.7-r2.ebuild | 320 ++++++++++++++++++
net-print/libcupsfilters/Manifest | 1 +
.../libcupsfilters-2.0.0.ebuild | 60 ++++
net-print/libcupsfilters/metadata.xml | 14 +
net-print/libppd/Manifest | 1 +
net-print/libppd/libppd-2.0.0.ebuild | 52 +++
net-print/libppd/metadata.xml | 14 +
15 files changed, 675 insertions(+)
create mode 100644 net-print/cups-browsed/Manifest
create mode 100644 net-print/cups-browsed/cups-browsed-2.0.0.ebuild
create mode 100644 net-print/cups-browsed/files/0001-cups-browsed.c-Fix-build-with-avahi-disabled-20.patch
create mode 100644 net-print/cups-browsed/metadata.xml
create mode 100644 net-print/cups-filters/cups-filters-2.0.0.ebuild
create mode 100644 net-print/cups-meta/cups-meta-1.ebuild
create mode 100644 net-print/cups-meta/metadata.xml
create mode 100644 net-print/cups/cups-2.4.7-r2.ebuild
create mode 100644 net-print/libcupsfilters/Manifest
create mode 100644 net-print/libcupsfilters/libcupsfilters-2.0.0.ebuild
create mode 100644 net-print/libcupsfilters/metadata.xml
create mode 100644 net-print/libppd/Manifest
create mode 100644 net-print/libppd/libppd-2.0.0.ebuild
create mode 100644 net-print/libppd/metadata.xml

--
2.41.0
Re: [RFC PATCH 00/10] Upgrading cups-filters to 2.0.0 [ In reply to ]
On Tue, 2023-12-05 at 00:20 -0500, Eli Schwartz wrote:
> I've been working with Sam for a bit on this update. It's a bit of a
> fiddly one, as a lot of stuff has changed upstream. It's probably best
> described via my proposed news post. Please review. It would also be
> quite nice to get a bit of testing -- I'm especially concerned about
> cups-browsed's testsuite, so if anyone has any ideas how to actually run
> it, that would be fantastic. I do not use cups-browsed myself...

I've mostly just glanced at the code, which looks fine, but I just want to
express my huge thanks for doing this. I know printing stuff isn't sexy, but
it is important, so I really appreciate the effort.