diff -u system-config-printer-1.3.8+20120201/debian/changelog system-config-printer-1.3.8+20120201/debian/changelog --- system-config-printer-1.3.8+20120201/debian/changelog +++ system-config-printer-1.3.8+20120201/debian/changelog @@ -1,3 +1,16 @@ +system-config-printer (1.3.8+20120201-0ubuntu8.1) precise-proposed; urgency=low + + * debian/patches/83_improved-sorting-of-device-lists.patch: Improved sort + order of device entries, so that in the "Connections" list of a detected + network printer "AppSocket/JetDirect" always has highest priority and + "IPP" has lowest. This way we avoid that network printers get set up + with IPP connection, as many printers do not conform to the IPP + standards. "AppSocket/JetDirect" is a very simple protocol which usually + works (Works around LP: #945028, LP: #973270, LP: #990734, LP: #992468, + LP: #992982). + + -- Till Kamppeter Tue, 29 May 2012 19:26:31 +0200 + system-config-printer (1.3.8+20120201-0ubuntu8) precise; urgency=low * debian/patches/40_pdf-printer-support.patch: Support for PPD files for only in patch2: unchanged: --- system-config-printer-1.3.8+20120201.orig/debian/patches/83_improved-sorting-of-device-lists.patch +++ system-config-printer-1.3.8+20120201/debian/patches/83_improved-sorting-of-device-lists.patch @@ -0,0 +1,57 @@ +diff -Nur -x '*.orig' -x '*~' system-config-printer-1.3.8+20120201/cupshelpers/cupshelpers.py system-config-printer-1.3.8+20120201.new/cupshelpers/cupshelpers.py +--- system-config-printer-1.3.8+20120201/cupshelpers/cupshelpers.py 2012-05-29 19:08:42.773560938 +0200 ++++ system-config-printer-1.3.8+20120201.new/cupshelpers/cupshelpers.py 2012-05-29 19:09:15.189727361 +0200 +@@ -562,18 +562,51 @@ + return -1 + if self.type == "parallel": + return 1 +- if other.type == "hp" or other.type == "hpfax": ++ if other.type == "hp": + return 1 +- if self.type == "hp" or self.type == "hpfax": ++ if self.type == "hp": ++ return -1 ++ if other.type == "hpfax": ++ return 1 ++ if self.type == "hpfax": + return -1 + if other.type == "dnssd": + return 1 + if self.type == "dnssd": + return -1 ++ if other.type == "socket": ++ return 1 ++ if self.type == "socket": ++ return -1 ++ if other.type == "lpd": ++ return 1 ++ if self.type == "lpd": ++ return -1 ++ if other.type == "ipps": ++ return 1 ++ if self.type == "ipps": ++ return -1 ++ if other.type == "ipp": ++ return 1 ++ if self.type == "ipp": ++ return -1 + if other.type == "usb": + return 1 + if self.type == "usb": + return -1 ++ if self.type == "dnssd" and other.type == "dnssd": ++ if other.uri.find("._pdl-datastream") != -1: # Socket ++ return 1 ++ if self.uri.find("._pdl-datastream") != -1: ++ return -1 ++ if other.uri.find("._printer") != -1: # LPD ++ return 1 ++ if self.uri.find("._printer") != -1: ++ return -1 ++ if other.uri.find("._ipp") != -1: # IPP ++ return 1 ++ if self.uri.find("._ipp") != -1: ++ return -1 + result = cmp(bool(self.id), bool(other.id)) + if not result: + result = cmp(self.info, other.info)