GTK print dialog does not allow printing and does not show options of a remote DNS-SD/Bonjour printer

Bug #1053891 reported by Till Kamppeter
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
GTK+
Expired
Critical
gtk+2.0 (Ubuntu)
Fix Released
High
Unassigned
Quantal
Fix Released
High
Unassigned
gtk+3.0 (Ubuntu)
Fix Released
High
Till Kamppeter
Quantal
Fix Released
High
Till Kamppeter

Bug Description

From CUPS 1.6.x on (Quantal) CUPS does not broadcast shared printers any more using its own method, leading to the fact that clients do not discover and make available printers on remote CUPS servers automatically any more. Now one has to explicitly add the printer on the client. To allow at least discovery of the server's printers, the server broadcasts the printer information via DNS-SD/Bonjour (using the Avahi daemon). Creating a queue on the client based on these broadcasts is easy, system-config-printer shows the server's host name under the discovered network printers and choosing this allows to use the shared CUPS printer. On the client we then have a raw queue (no local PPD/driver, we use the server's one) with a device URI like this:

dnssd://Color%20Laser%20Printer%20%40%20server._ipp._tcp.local/cups

One can print on this printer via the "lpr" command and one can display the options (defined in the PPD file on the server) with "lpoptions -l".

If one opens the GTK print dialog (for example in evince), the printer gets listed but it says "Getting printer information ..." infinitely and the "Print" button stays grayed out, making printing through the GTK dialog impossible.

This is a najor problem as it prevents printing on printers shared between computers running Quantal.

The fix is simple and the debdiff is attached.

To reproduce: Take two Quantal machines, both need to run CUPS and Avahi, the client needs to run a desktop and have GTK applicatiuons installed. On the server create a print queue with system-config-printer or by simply plugging in a USB printer, do not create a raw (driverless) print queue. Share the printer ("cupsctl --share-printers" or "Server"/"Settings" in system-config-printer). On the client create a queue pointing to this printer, in system-config-printer click the "Add" button and in the printer setup wizard wait for the spinning icon to disappear, under the network printers choose the host name of the server and complete the wizard, you will not get asked for make, model, or driver. You will be able to print a test page and to browse the printer's options with system-config-printer. You also will be able to print from the command line or from KDE applications. If you try to print from GTK applications the queue displays in the dialog but is stuck with grayed "Print" button and "Getting printer information ...".

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

Setting priority to "High" as this is essential print functionality in Quantal.

Changed in gtk+3.0 (Ubuntu):
importance: Undecided → High
status: New → Triaged
milestone: none → ubuntu-12.10-beta-2
tags: added: rls-q-incoming
Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

debdiff to fix the bug.

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

I have tested the -0ubuntu3 package uploaded to -proposed and it works.

tags: added: patch
Changed in gtk+3.0 (Ubuntu Quantal):
assignee: nobody → Till Kamppeter (till-kamppeter)
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gtk+3.0 - 3.5.18-0ubuntu3

---------------
gtk+3.0 (3.5.18-0ubuntu3) quantal-proposed; urgency=low

  * debian/patches/print-dialog-show-options-of-remote-dnssd-printers.patch:
    Make printing on remote DNS-SD/Bonjour-shared printers working
    (LP: #1053891).
 -- Till Kamppeter <email address hidden> Fri, 21 Sep 2012 10:56:30 +0200

Changed in gtk+3.0 (Ubuntu Quantal):
status: Triaged → Fix Released
Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

My patch also needs to get applied to GTK 2 as Firefox and Thunderbird are still using GTK 2.

Changed in gtk+2.0 (Ubuntu Quantal):
status: New → Confirmed
importance: Undecided → High
milestone: none → ubuntu-12.10-beta-2
Changed in gtk+2.0 (Ubuntu Quantal):
milestone: ubuntu-12.10-beta-2 → ubuntu-12.10
assignee: nobody → Till Kamppeter (till-kamppeter)
Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

And here is the debdiff for GTK 2.

Changed in gtk+2.0 (Ubuntu Quantal):
status: Confirmed → In Progress
status: In Progress → Fix Committed
Iain Lane (laney)
Changed in gtk+2.0 (Ubuntu Quantal):
status: Fix Committed → In Progress
assignee: Till Kamppeter (till-kamppeter) → Iain Lane (laney)
Iain Lane (laney)
Changed in gtk+2.0 (Ubuntu Quantal):
assignee: Iain Lane (laney) → nobody
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gtk+2.0 - 2.24.13-0ubuntu1

---------------
gtk+2.0 (2.24.13-0ubuntu1) quantal-proposed; urgency=low

  [ Till Kamppeter ]
  * debian/patches/print-dialog-show-options-of-remote-dnssd-printers.patch:
    Make printing on remote DNS-SD/Bonjour-shared printers working
    (LP: #1053891).

  [ Didier Roche ]
  * New upstream release:
    - F10 always opens the menu, cannot be overriden (LP: #937822)
 -- Didier Roche <email address hidden> Mon, 24 Sep 2012 13:56:56 +0200

Changed in gtk+2.0 (Ubuntu Quantal):
status: Fix Committed → Fix Released
Changed in gtk:
importance: Unknown → Critical
status: Unknown → New
Changed in gtk:
status: New → Confirmed
Changed in gtk:
status: Confirmed → Expired
Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

GNOME upstream bug #684533 has been moved to GitLab

https://gitlab.gnome.org/GNOME/gtk/issues/407

but it seems that GitLab is not yet supported by Launchpad, the link in the GTK+ upstream task of this bug report cannot be replaced by this one.

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.