[Printing-architecture] [Printing-japan] Ubuntu Natty the first distribution which does automatic download of binary printer driver packages

Till Kamppeter till.kamppeter at gmail.com
Fri Mar 11 09:45:57 PST 2011

Tim, thanks. I have updated the Ubuntu package now (0ubuntu5).

Can everyonne please test again (with fully updated Natty) whether 
auto-download of drivers works in all cases:

1. Plug printer to USB and turn it on.
2. Leave the printer on USB plugged and turned on, remove the
    auto-generated queue(s) and uninstall the auto-installed driver.
    Then start system-config-printer, click "+ Add", select the USB from
    the list of detected printers and go through the new printer wizard.
3. Right-click the icon of the printer installed from the last test,
    click "Properties in the pop-up menu and in the Properties dialog
    click the "Change" button for make and model. Change the driver to
    any local one, like Gutenprint. Then uninstall the auto-downloaded
    driver package. Now go intp the Properties dialog again and click
    "Change" for make and model. Choose the original printer make and
    model (the one which could automatically chosen in the first 2
    tests). Does somewhere on the way an automatic driver download get
4. Uninstall the auto-installed package from the previous tests and
    remove the print queues. Disconnect the printer from the USB and
    connect it to the network (wired or wireless does not matter, but
    for wireless the printer needs to be configured to connect to the
    router). Now start system-config-printer, click "+ Add" and in the
    list open the section for network printers. Wait around 15 sec until
    the spinning circle at the lower left disappears. Now choose the
    printer under the network printers and follow the rest of the
    wizard's steps.
5. Do the steps of test 3 with your network printer queue from test 4.

Does the automatic driver download happen in all these steps?


On 03/11/2011 05:59 PM, Tim Waugh wrote:
> On Fri, 2011-03-11 at 17:15 +0100, Till Kamppeter wrote:
>> Tim, the patch to fix this (and which I have applied to the Ubuntu
>> package) is attached./ Please apply it also upstream. Thanks.
> Thanks.  Actually some of these are incorrect, so I've applied a patch
> that fixes the correct part and have removed the incorrect code.
> diff --git a/newprinter.py b/newprinter.py
> index 0d58a40..fa113cc 100644
> --- a/newprinter.py
> +++ b/newprinter.py
> @@ -637,6 +637,8 @@ class NewPrinterGUI(GtkGUI):
>               if self.dialog_mode == "ppd":
>                   devid = self.device.id
> +                if not self.devid:
> +                    self.devid = devid
>               if not devid:
>                   devid = None
> This entire block is stale code I think.  If self.dialog_mode is "ppd",
> self.device.id is definitely unset (we only created self.device a few
> lines above).
> @@ -655,6 +657,8 @@ class NewPrinterGUI(GtkGUI):
>                                           include_schemes=schemes,
>                                           reply_handler=self.change_ppd_got_devs,
>                                           error_handler=self.change_ppd_got_devs)
> +                if self.devid:
> +                    devid = self.devid
> No, that's not right.  The reason is that the getDevices() call
> immediately above these new lines is asynchronous.  The reason we're
> calling getDevices() at all here is precisely in order to get the Device
> ID for the device we're changing the PPD of, because we don't already
> have it.
> Here's the patch that fixes the problem.  Another patch is in master
> that removes the stale code.
> Tim.
> */

More information about the Printing-architecture mailing list