[MIR] cpdb-backend-cups

Bug #1747760 reported by Till Kamppeter
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
cpdb-backend-cups (Ubuntu)
Fix Released
High
Unassigned

Bug Description

[Availability]

Already in universe

Built for all supported architectures

[Rationale]

The Common Printing Dialog Backends (CPDB) project of OpenPrinting is about separating the print dialogs of different GUI toolkits and applications (GTK, Qt, LibreOffice, ...) from the different print technologies (CUPS/IPP, Google Cloud Print, ...) so that they can get developed independently and so always from all applications one can print with all print technologies and changes in the print technologies get supported quickly.

If one opens the print dialog, the dialog will not talk directly to CUPS, Google Cloud Print, or any other printing system. For this communication there are the backends. The dialog will find all available backend and sends commands to them, for listing all available printers, giving property/option lists for the selected printers, and printing on the selcted printer. This communication is done via D-Bus. So the backends are easily exchangeable and for getting support for a new print technology only its backend needs to get added.

[Security]

No known security issues, no CVEs for cpdb-backend-cups known.

The backends are triggered via session D-Bus and always run as the same user as the calling print dialog, so they do not introduce additional security problems.

The separation of the communication with individual print technologies makes this code only be needed once (in the appropriate backend) instead of in each print dialog. This simplifies the security maintenance.

[Quality assurance]

- The Ubuntu Printing Team is subscribed.

https://bugs.launchpad.net/ubuntu/+source/cpdb-backend-cups
https://github.com/OpenPrinting/cpdb-backend-cups/issues

No upstream tests or autopkgtests.

[Dependencies]

Depends on cpdb-libs, MIR in bug 1747759.

[Standards compliance]

The package meets the FHS and Debian Policy standards (4.1.0)

[Maintenance]

- Actively developed upstream. Last release was 1.0.0
https://github.com/OpenPrinting/cpdb-backend-cups/commits/master

Changed in cpdb-backend-cups (Ubuntu):
importance: Undecided → High
Revision history for this message
Matthias Klose (doko) wrote :

Please address the following issues:

 - grepping for sprintf, you only find fixed buffer sizes everywhere.
   Please could you replace these with sensible macros/constants,
   or provide an analysis why these buffers are large enough?

Changed in cpdb-backend-cups (Ubuntu):
status: New → Incomplete
Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

I have now modified the upstream code to use dynanically allocated buffers or snprintf() whatever is more appropriate in each situation.

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

cpdb-backend-cups 1.0.1 uploaded.

Changed in cpdb-backend-cups (Ubuntu):
status: Incomplete → In Progress
Revision history for this message
Matthias Klose (doko) wrote :

this looks ok now. does it need seeding or a dependency somewhere?

Changed in cpdb-backend-cups (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

This package will need seeding as there is no package yet using it.

Revision history for this message
Jeremy Bícha (jbicha) wrote :

Does this mean we will no longer need to install cups-ipp-utils by default?

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

jbicha, no, cups-ipp-utils provides utilities for developing of IPP-related software, whereas cpdb-backend-cups is a software module (backend) to add CUPS support to generic print dialogs which use the cpdb-libs library.

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

I have uploaded upstream version 2.0b3 now as it is required to have 2.x backends by the also uploaded 2.0b3 version of cpdb-libs which is in turn needed by GTK 4.9.4.

Changes in the debian/ directory are minimal, only for the changes in the binary package naming of cpdb-libs and for changes in the source package documentation files.

There is one new dependency on libcupsfilters2 (build-depends: libcupsfilters-dev (>= 2~), there is another MIR for the libcupsfilters source package).

cpdb-backend-cups need to get seeded, as neither any binary package of cpdb-libs nor any binary package of CUPS depend on it. It is needed in a standard installation as otherwise CUPS printers will not appear in the GTK print dialog (GTK 4.9.4+).

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

In terms of autopkgtests this package does not need its own test as it build-depends and depends on binary packages of cpdb-libs and the autopkgtest of cpdb-libs, as it needs a CPDB backend, uses, and so tests, this package, cpdb-backend-cups.

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

Uploaded cpdb-backend-cups 2.0b4, has build test and autopkgtest, latter is same as of cpdb-libs.

libcupsfilters 2.x made it to Main now, so this dependency is solved.

Revision history for this message
Sebastien Bacher (seb128) wrote :

$ ./change-override -c main -B cpdb-backend-cups
Override component to main
cpdb-backend-cups 2.0~b4-0ubuntu1 in mantic: universe/net -> main
cpdb-backend-cups 2.0~b4-0ubuntu1 in mantic amd64: universe/net/optional/100% -> main
cpdb-backend-cups 2.0~b4-0ubuntu1 in mantic arm64: universe/net/optional/100% -> main
cpdb-backend-cups 2.0~b4-0ubuntu1 in mantic armhf: universe/net/optional/100% -> main
cpdb-backend-cups 2.0~b4-0ubuntu1 in mantic ppc64el: universe/net/optional/100% -> main
cpdb-backend-cups 2.0~b4-0ubuntu1 in mantic riscv64: universe/net/optional/100% -> main
cpdb-backend-cups 2.0~b4-0ubuntu1 in mantic s390x: universe/net/optional/100% -> main
Override [y|N]? y
7 publications overridden.

Changed in cpdb-backend-cups (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Sebastien Bacher (seb128) wrote :

the cpdb-libs MIR has got accepted and the desktop-packages team subscribed so promoting

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.