diff --git a/system-config-printer-remote-missing.patch b/system-config-printer-remote-missing.patch new file mode 100644 index 0000000..e034fbb --- /dev/null +++ b/system-config-printer-remote-missing.patch @@ -0,0 +1,71 @@ +diff -up system-config-printer-1.4.1/newprinter.py.remote-missing system-config-printer-1.4.1/newprinter.py +--- system-config-printer-1.4.1/newprinter.py.remote-missing 2013-07-02 12:47:40.326084898 +0100 ++++ system-config-printer-1.4.1/newprinter.py 2013-07-02 12:48:29.943214126 +0100 +@@ -3894,9 +3894,6 @@ class NewPrinterGUI(GtkGUI): + else: + name = self._name + +- # Whether to check for missing drivers. +- check = False +- checkppd = None + ppd = self.ppd + + if self.dialog_mode == "class": +@@ -3936,7 +3933,6 @@ class NewPrinterGUI(GtkGUI): + if isinstance(ppd, str) or isinstance(ppd, unicode): + self.cups.addPrinter(name, ppdname=ppd, + device=uri, info=info, location=location) +- check = True + elif ppd is None: # raw queue + self.cups.addPrinter(name, device=uri, + info=info, location=location) +@@ -3944,8 +3940,6 @@ class NewPrinterGUI(GtkGUI): + cupshelpers.setPPDPageSize(ppd, self.language[0]) + self.cups.addPrinter(name, ppd=ppd, device=uri, + info=info, location=location) +- check = True +- checkppd = ppd + except cups.IPPError, (e, msg): + ready (self.NewPrinterWindow) + self.show_IPP_Error(e, msg) +@@ -4041,10 +4035,6 @@ class NewPrinterGUI(GtkGUI): + + self.cups._end_operation () + +- if not raw: +- check = True +- checkppd = ppd +- + self.NewPrinterWindow.hide() + if self.dialog_mode in ["printer", "printer_with_uri", "class"]: + self.emit ('printer-added', name) +diff -up system-config-printer-1.4.1/system-config-printer.py.remote-missing system-config-printer-1.4.1/system-config-printer.py +--- system-config-printer-1.4.1/system-config-printer.py.remote-missing 2013-07-02 12:47:40.328085296 +0100 ++++ system-config-printer-1.4.1/system-config-printer.py 2013-07-02 12:48:29.944214283 +0100 +@@ -1846,20 +1846,19 @@ class GUI(GtkGUI): + + iter = model.iter_next (iter) + +- # Finally, suggest printing a test page. ++ # Any missing drivers? + self.propertiesDlg.load (name) +- if self.propertiesDlg.ppd or \ +- ((self.propertiesDlg.printer.remote or \ +- ((self.propertiesDlg.printer.device_uri.startswith('dnssd:') or \ +- self.propertiesDlg.printer.device_uri.startswith('mdns:')) and \ +- self.propertiesDlg.printer.device_uri.endswith('/cups'))) and not\ +- self.propertiesDlg.printer.discovered): ++ if (self.propertiesDlg.ppd and ++ not (self.propertiesDlg.printer.discovered or ++ self.propertiesDlg.printer.remote)): + try: + self.checkDriverExists (self.PrintersWindow, name, + ppd=self.propertiesDlg.ppd) + except: + nonfatalException() + ++ # Finally, suggest printing a test page. ++ if self.propertiesDlg.ppd: + q = Gtk.MessageDialog (self.PrintersWindow, + Gtk.DialogFlags.DESTROY_WITH_PARENT | + Gtk.DialogFlags.MODAL, diff --git a/system-config-printer.spec b/system-config-printer.spec index e3bdd74..468cda8 100644 --- a/system-config-printer.spec +++ b/system-config-printer.spec @@ -24,6 +24,7 @@ Patch15: system-config-printer-rename.patch Patch16: system-config-printer-notification-new.patch Patch17: system-config-printer-utf8-971973.patch Patch18: system-config-printer-statusicon-geometry.patch +Patch19: system-config-printer-remote-missing.patch BuildRequires: cups-devel >= 1.2 BuildRequires: desktop-file-utils >= 0.2.92 @@ -124,6 +125,9 @@ printers. # Another fix from the move to gi.repository (bug #973662). %patch18 -p1 -b .statusicon-geometry +# Don't check for missing drivers in remote printers (bug #975058) +%patch19 -p1 -b .remote-missing + %build %configure --with-udev-rules @@ -224,6 +228,7 @@ exit 0 %changelog * Tue Jul 2 2013 Tim Waugh 1.4.1-8 +- Don't check for missing drivers in remote printers (bug #975058) - Another fix from the move to gi.repository (bug #973662). - Fixed another codec issue (bug #971973).