public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: Eli Schwartz <eschwartz93@gmail.com>
To: gentoo-dev@lists.gentoo.org
Subject: [gentoo-dev] [RFC PATCH 00/10] Upgrading cups-filters to 2.0.0
Date: Tue,  5 Dec 2023 00:20:25 -0500	[thread overview]
Message-ID: <20231205052550.3150055-1-eschwartz93@gmail.com> (raw)

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



             reply	other threads:[~2023-12-05  5:26 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-05  5:20 Eli Schwartz [this message]
2023-12-05  5:20 ` [gentoo-dev] [RFC PATCH 01/10] net-print/libcupsfilters: new package, add 2.0.0 Eli Schwartz
2023-12-05  5:20 ` [gentoo-dev] [RFC PATCH 02/10] net-print/libppd: " Eli Schwartz
2023-12-05  5:20 ` [gentoo-dev] [RFC PATCH 03/10] net-print/cups-filters: " Eli Schwartz
2023-12-05  5:20 ` [gentoo-dev] [RFC PATCH 04/10] net-print/cups-browsed: new package, " Eli Schwartz
2023-12-05  5:20 ` [gentoo-dev] [RFC PATCH 05/10] net-print/cups-meta: new package, add 1 Eli Schwartz
2023-12-05  5:20 ` [gentoo-dev] [RFC PATCH 06/10] net-print/cups: drop cyclic dependency on cups-filters Eli Schwartz
2023-12-05  5:20 ` [gentoo-dev] [RFC PATCH 07/10] net-print/cups: re-enable tests Eli Schwartz
2023-12-05  5:20 ` [gentoo-dev] [RFC PATCH 08/10] net-print/cups: avoid running unittests in src_compile Eli Schwartz
2023-12-05  5:20 ` [gentoo-dev] [RFC PATCH 09/10] net-print/cups-browsed: restrict tests Eli Schwartz
2023-12-05  5:20 ` [gentoo-dev] [RFC PATCH 10/10] net-print/cups-filters: " Eli Schwartz
2023-12-05 21:51 ` [gentoo-dev] [RFC PATCH 00/10] Upgrading cups-filters to 2.0.0 James Le Cuirot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231205052550.3150055-1-eschwartz93@gmail.com \
    --to=eschwartz93@gmail.com \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox