Comment 0 for bug 1401835

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

The transition from Python2 to Python3, the replacement of the OpenPrinting web server by a new VM running Ubuntu 12.04 instead of 10.04, and code restructuring in system-config-printer has broken automatic driver package download at several points. This is now fixed in the Vivid package of system-config-printer but (at least part) of the fixes needs to get backported to Utopic and Trusty, for which I have posted this bug report.

[Impact]

With the OpenPrinting web server change (Utopic, Trusty) and the transition to Python3 (Utopic) automatic driver download stopped working. So users of Utopic and Trusty who connect a printer only supported by a downloadable driver package listed at OpenPrinting (mostly newer Epson inkjets but also new PostScript/PCL printers from Ricoh and OEM, Samsung, ...) will not get the correct driver letting the printer not work at all or work with an inferior generic driver.

[Test Case]

If you do not have one of the mentioned printers, create a file named /usr/lib/cups/backend/testbackend containing the line

echo 'direct usb://EPSON/EP-801A "EPSON EP-801A" "EPSON EP-801A" "MFG:EPSON;CMD:ESCPL2,BDC,D4,D4PX,ESCPR2;MDL:EP-801A;CLS:PRINTER;DES:EPSON EP-801A;" ""'

and make iot world-readable and -executable:

sudo chmod a+rx /usr/lib/cups/backend/testbackend

This emulates an Epson EP-801A printer on USB, at least for CUPS' printer discovery facility.

Start system-config-printer and click the "Add" button. In the printer setup wizard choose the Epson EP-801A under the detected printers. There will pop up "Searching driver" messages several times but in the end the manual make/model/driver selection screen appears as system-config-printer was not able to find a driver for this printer.

With the proposed packages for Utopic and Trusty a driver is find via OpenPrinting ("epson-escpr") and offered for download. Accepting this leads to the driver being installed (and the Debian package repository at Epson being locally registered for future updates by Ubuntu's update mechanism) and afterwards automatically being assigned to the new print queue. The user is only asked for setting the queue name and comments before the wizard completes.

[Regression Potential]

Regression potential is low, as the fix consists of several small, independent changes, and most of them are not hit if the newly added printer is supported by a locally available driver.