From 0dfdb535aa67dbb421bd30283ec0b0fe62aed8c7 Mon Sep 17 00:00:00 2001 From: Jiri Popelka Date: Fri, 3 Jun 2011 12:31:13 +0200 Subject: [PATCH] 1.3.3 Set translation domain for ServerSettingsDialog (Ubuntu #777188). scp-dbus-service: Ignore setlocale() errors (Ubuntu #748964). Renamed ui/*.glade to ui/*.ui again (Ubuntu #759811). Allow % character in SMB URI (Ubuntu #747400). More error handling (Ubuntu #744783). Avoid traceback if printer duplication fails (bug #694629). Fixed off-by-one error in monitor. Fixed printer renaming (Ubuntu #726954). Added PrinterModified D-Bus signal to printer properties interface. More robustness for printer properties dialog when printer removed (Ubuntu #741987). Fixed PPDs loader when using CUPS remotely or when DBus not available (bug #693515). Handle failure to load PPDs more gracefully (Ubuntu #742409). Avoid traceback when cancelling New Printer dialog after failure. Make sure everything is ready before handlers might be called (bug #689336). Ensure consistency in jobviewer if add_job fails (bug #693055, bug #632551). Be defensive against CUPS returning incorrect job IDs (Ubuntu #721051). Job viewer's attribute window: Convert job numbers and attribute values to strings (Ubuntu bug #733088). udev-configure-printer: be more defensive when parsing CUPS response (Ubuntu #760661). --- .gitignore | 1 + sources | 3 +- system-config-printer-1.3.2.tar.xz.sig | Bin 65 -> 0 bytes system-config-printer-1.3.3.tar.xz.sig | Bin 0 -> 65 bytes system-config-printer-check-device-ids.patch | 111 ------------------- system-config-printer-self.printers.patch | 48 -------- system-config-printer.spec | 39 +++++-- 7 files changed, 30 insertions(+), 172 deletions(-) delete mode 100644 system-config-printer-1.3.2.tar.xz.sig create mode 100644 system-config-printer-1.3.3.tar.xz.sig delete mode 100644 system-config-printer-check-device-ids.patch delete mode 100644 system-config-printer-self.printers.patch diff --git a/.gitignore b/.gitignore index 56411df..b121e8a 100644 --- a/.gitignore +++ b/.gitignore @@ -231,3 +231,4 @@ pycups-1.9.51.tar.bz2 /system-config-printer-1.3.0.tar.xz /system-config-printer-1.3.1.tar.xz /system-config-printer-1.3.2.tar.xz +/system-config-printer-1.3.3.tar.xz diff --git a/sources b/sources index 0ffd79d..fa17fdf 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -37ff34b1c43d951963ccd831f9d176d4 system-config-printer-1.3.1.tar.xz -34a0ce9a11be5695b3b4065e4f17b009 system-config-printer-1.3.2.tar.xz +658516848c6ced2b1acc6d3525d27204 system-config-printer-1.3.3.tar.xz diff --git a/system-config-printer-1.3.2.tar.xz.sig b/system-config-printer-1.3.2.tar.xz.sig deleted file mode 100644 index a4281c7e82e0dab76001158d91432195b4cb05fd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65 zcmV-H0KWf-KLZ5-O@oAv1hg7`no8Q&5dz`F0GkB(up+}x^xDRF^MUkKDUiiSfYAV- XK_;+v7e14p>_Zp2Z%3wcJ+g^Fv-%z3 diff --git a/system-config-printer-1.3.3.tar.xz.sig b/system-config-printer-1.3.3.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000..47e256960a7e6071fa0bf1f61043e80524c7593e GIT binary patch literal 65 zcmV-H0KWf-KLZ5-P3M&&1hg7`no8Q&5dsl60H1c@dths85EC|FFAV{G>eL1L-ID;H Xa&$&+ndZ~zkNtS7w@Ff-*?k26GISiQ literal 0 HcmV?d00001 diff --git a/system-config-printer-check-device-ids.patch b/system-config-printer-check-device-ids.patch deleted file mode 100644 index 35f01f1..0000000 --- a/system-config-printer-check-device-ids.patch +++ /dev/null @@ -1,111 +0,0 @@ -diff -up system-config-printer-1.3.2/check-device-ids.py.check-device-ids system-config-printer-1.3.2/check-device-ids.py ---- system-config-printer-1.3.2/check-device-ids.py.check-device-ids 2011-02-20 14:35:25.000000000 +0000 -+++ system-config-printer-1.3.2/check-device-ids.py 2011-03-22 17:01:34.468998320 +0000 -@@ -2,7 +2,7 @@ - - ## check-device-ids - --## Copyright (C) 2010 Red Hat, Inc. -+## Copyright (C) 2010, 2011 Red Hat, Inc. - ## Authors: - ## Tim Waugh - -@@ -32,8 +32,12 @@ c = cups.Connection () - devices = None - if len (sys.argv) > 1 and sys.argv[1] == '--help': - print "Syntax: check-device-ids " -+ print " or: check-device-ids " -+ print " or: check-device-ids " -+ print " or: check-device-ids" - sys.exit (1) - -+SPECIFIC_URI = None - if len (sys.argv) == 3: - id_dict = cupshelpers.parseDeviceID (sys.argv[2]) - if id_dict.has_key ("MFG") and id_dict.has_key ("MDL"): -@@ -41,15 +45,34 @@ if len (sys.argv) == 3: - { 'device-make-and-model': sys.argv[1], - 'device-id': sys.argv[2] } - } -+elif len (sys.argv) == 2: -+ if sys.argv[1].find (":/") != -1: -+ SPECIFIC_URI = sys.argv[1] -+ else: -+ # This is a queue name. Work out the URI from that. -+ try: -+ attrs = c.getPrinterAttributes (sys.argv[1]) -+ except cups.IPPError, (e, m): -+ print "Error getting printer attibutes: %s" % m -+ sys.exit (1) -+ -+ SPECIFIC_URI = attrs['device-uri'] -+ print "URI for queue %s is %s" % (sys.argv[1], SPECIFIC_URI) - else: - print ("\nIf you have not already done so, you may get more results\n" - "by temporarily disabling your firewall (or by allowing\n" - "incoming UDP packets on port 161).\n") - - if devices == None: -- print "Examining connected devices" -+ if not SPECIFIC_URI: -+ print "Examining connected devices" -+ - try: -- devices = c.getDevices (exclude_schemes=["dnssd", "hal", "hpfax"]) -+ if SPECIFIC_URI: -+ scheme = str (SPECIFIC_URI.split (":", 1)[0]) -+ devices = c.getDevices (include_schemes=[scheme]) -+ else: -+ devices = c.getDevices (exclude_schemes=["dnssd", "hal", "hpfax"]) - except cups.IPPError, (e, m): - if e == cups.IPP_FORBIDDEN: - print "Run this as root to examine IDs from attached devices." -@@ -59,6 +82,11 @@ if devices == None: - print "Not authorized." - sys.exit (1) - -+if SPECIFIC_URI: -+ if devices.get (SPECIFIC_URI) == None: -+ devices = { SPECIFIC_URI: -+ { 'device-make-and-model': '', -+ 'device-id': ''} } - if len (devices) == 0: - print "No attached devices." - sys.exit (0) -@@ -69,14 +97,20 @@ for device, attrs in devices.iteritems ( - if device.find (":") == -1: - continue - -+ if SPECIFIC_URI and device != SPECIFIC_URI: -+ continue -+ - make_and_model = attrs.get ('device-make-and-model') - device_id = attrs.get ('device-id') -- if make_and_model and not device_id: -+ if (SPECIFIC_URI or make_and_model) and not device_id: - try: - hostname = None - if (device.startswith ("socket://") or -- device.startswith ("lpd://")): -- hostname = device[9:] -+ device.startswith ("lpd://") or -+ device.startswith ("ipp://") or -+ device.startswith ("http://") or -+ device.startswith ("https://")): -+ hostname = device[device.find ("://") + 3:] - colon = hostname.find (":") - if colon != -1: - hostname = hostname[:colon] -@@ -100,7 +134,11 @@ for device, attrs in devices.iteritems ( - if dev.id: - device_id = dev.id - attrs.update ({'device-id': dev.id}) -- break -+ -+ if not make_and_model and dev.make_and_model: -+ make_and_model = dev.make_and_model -+ attrs.update ({'device-make-and-model': -+ dev.make_and_model}) - - except Exception, e: - print "Exception: %s" % repr (e) diff --git a/system-config-printer-self.printers.patch b/system-config-printer-self.printers.patch deleted file mode 100644 index 5c5f327..0000000 --- a/system-config-printer-self.printers.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff -up system-config-printer-1.3.2/newprinter.py.self.printers system-config-printer-1.3.2/newprinter.py ---- system-config-printer-1.3.2/newprinter.py.self.printers 2011-03-16 17:44:09.000000000 +0000 -+++ system-config-printer-1.3.2/newprinter.py 2011-03-22 17:02:56.972108028 +0000 -@@ -186,6 +186,7 @@ class NewPrinterGUI(GtkGUI): - self.installable_options = False - self.ppdsloader = None - self.jockey_installed_files = [] -+ self.printers = {} # set in init() - - # Synchronisation objects. - self.drivers_lock = thread.allocate_lock() -@@ -544,16 +545,9 @@ class NewPrinterGUI(GtkGUI): - self.ppds = None - self.ppdsmatch_result = None - self.printer_finder = None -- self.lblNetworkFindSearching.hide () -- self.entNPTNetworkHostname.set_sensitive (True) -- self.entNPTNetworkHostname.set_text ('') -- self.btnNetworkFind.set_sensitive (True) -- self.lblNetworkFindNotFound.hide () -- -- # Clear out any previous list of makes. -- model = self.tvNPMakes.get_model() -- model.clear() - -+ # Get a current list of printers so that we can know whether -+ # the chosen name is unique. - try: - self.cups = authconn.Connection (parent=self.NewPrinterWindow, - host=self._host, -@@ -574,6 +568,17 @@ class NewPrinterGUI(GtkGUI): - show_IPP_Error (e, m, parent=self.parent) - return False - -+ # Initialise widgets. -+ self.lblNetworkFindSearching.hide () -+ self.entNPTNetworkHostname.set_sensitive (True) -+ self.entNPTNetworkHostname.set_text ('') -+ self.btnNetworkFind.set_sensitive (True) -+ self.lblNetworkFindNotFound.hide () -+ -+ # Clear out any previous list of makes. -+ model = self.tvNPMakes.get_model() -+ model.clear() -+ - if device_uri == None and dialog_mode in ['printer_with_uri', - 'device', - 'ppd']: diff --git a/system-config-printer.spec b/system-config-printer.spec index 9c3f1e3..807adc2 100644 --- a/system-config-printer.spec +++ b/system-config-printer.spec @@ -4,15 +4,13 @@ Summary: A printer administration tool Name: system-config-printer -Version: 1.3.2 -Release: 2%{?dist} +Version: 1.3.3 +Release: 1%{?dist} License: GPLv2+ URL: http://cyberelk.net/tim/software/system-config-printer/ Group: System Environment/Base Source0: http://cyberelk.net/tim/data/system-config-printer/1.2/%{name}-%{version}.tar.xz Patch1: system-config-printer-no-applet-in-gnome.patch -Patch2: system-config-printer-check-device-ids.patch -Patch3: system-config-printer-self.printers.patch BuildRequires: cups-devel >= 1.2 BuildRequires: desktop-file-utils >= 0.2.92 BuildRequires: gettext-devel @@ -73,12 +71,6 @@ printers. # Don't start the applet in GNOME. %patch1 -p1 -b .no-applet-in-gnome -# Improvements for check-device-ids from upstream. -%patch2 -p1 -b .check-device-ids - -# Fixed traceback in newprinter.py (bug #680683). -%patch3 -p1 -b .self.printers - %build %configure --with-udev-rules @@ -177,7 +169,7 @@ rm -rf %buildroot %{_datadir}/%{name}/xml/*.rng %{_datadir}/%{name}/xml/validate.py* %dir %{_datadir}/%{name}/ui -%{_datadir}/%{name}/ui/*.glade +%{_datadir}/%{name}/ui/*.ui %{_datadir}/applications/system-config-printer.desktop %{_sysconfdir}/xdg/autostart/print-applet.desktop %{_mandir}/man1/* @@ -187,6 +179,31 @@ rm -rf %buildroot exit 0 %changelog +* Fri Jun 03 2011 Jiri Popelka 1.3.3-1 +- 1.3.3: + - Set translation domain for ServerSettingsDialog (Ubuntu #777188). + - scp-dbus-service: Ignore setlocale() errors (Ubuntu #748964). + - Renamed ui/*.glade to ui/*.ui again (Ubuntu #759811). + - Allow % character in SMB URI (Ubuntu #747400). + - More error handling (Ubuntu #744783). + - Avoid traceback if printer duplication fails (bug #694629). + - Fixed off-by-one error in monitor. + - Fixed printer renaming (Ubuntu #726954). + - Added PrinterModified D-Bus signal to printer properties interface. + - More robustness for printer properties dialog + when printer removed (Ubuntu #741987). + - Fixed PPDs loader when using CUPS remotely or + when DBus not available (bug #693515). + - Handle failure to load PPDs more gracefully (Ubuntu #742409). + - Avoid traceback when cancelling New Printer dialog after failure. + - Make sure everything is ready before handlers might be called (bug #689336). + - Ensure consistency in jobviewer if add_job fails (bug #693055, bug #632551). + - Be defensive against CUPS returning incorrect job IDs (Ubuntu #721051). + - Job viewer's attribute window: Convert job numbers and + attribute values to strings (Ubuntu bug #733088). + - udev-configure-printer: be more defensive when + parsing CUPS response (Ubuntu #760661). + * Tue Mar 22 2011 Tim Waugh 1.3.2-2 - Fixed traceback in newprinter.py (bug #680683). - Improvements for check-device-ids from upstream.