- 1.1.10:
- New udev rules for adding/enabling/disabling USB printers automatically.
- Now uses gnome-packagekit utility to install packages instead of the
    D-Bus API.
- Fixed detection of stopped jobs with CUPS 1.4.
- Fixed tracebacks when adding a new printer and when receiving IPP
    notifications.
- Fixed 'location' field for printers added on remote CUPS servers.
- Fixed handling of incorrect authentication.
- Some UI and troubleshooter fixes have been made.
			
			
This commit is contained in:
		
							parent
							
								
									d4fb98f696
								
							
						
					
					
						commit
						ec4a192d6b
					
				| @ -201,3 +201,4 @@ system-config-printer-1.1.6.tar.bz2 | ||||
| system-config-printer-1.1.7.tar.bz2 | ||||
| pycups-1.9.46.tar.bz2 | ||||
| system-config-printer-1.1.8.tar.bz2 | ||||
| system-config-printer-1.1.10.tar.bz2 | ||||
|  | ||||
							
								
								
									
										2
									
								
								sources
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								sources
									
									
									
									
									
								
							| @ -1,3 +1,3 @@ | ||||
| ac8f98a40b0fc4b6ab4470f10489887a  pysmbc-1.0.6.tar.bz2 | ||||
| 895d4170542ec80c74d41746a9474409  pycups-1.9.46.tar.bz2 | ||||
| fa520cbf9cd86dc6fa8becd872bbbfa9  system-config-printer-1.1.8.tar.bz2 | ||||
| 18d7455f832a9bc5b72d15e5e38913cd  system-config-printer-1.1.10.tar.bz2 | ||||
|  | ||||
							
								
								
									
										
											BIN
										
									
								
								system-config-printer-1.1.10.tar.bz2.sig
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								system-config-printer-1.1.10.tar.bz2.sig
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,79 +0,0 @@ | ||||
| diff -up system-config-printer-1.1.8/glade/NewPrinterWindow.glade.arrows system-config-printer-1.1.8/glade/NewPrinterWindow.glade
 | ||||
| --- system-config-printer-1.1.8/glade/NewPrinterWindow.glade.arrows	2009-06-03 09:20:26.000000000 +0100
 | ||||
| +++ system-config-printer-1.1.8/glade/NewPrinterWindow.glade	2009-07-03 18:18:50.640997051 +0100
 | ||||
| @@ -3662,6 +3662,7 @@ DTR/DSR (Hardware)</property>
 | ||||
|  			  <property name="fixed_height_mode">False</property> | ||||
|  			  <property name="hover_selection">False</property> | ||||
|  			  <property name="hover_expand">False</property> | ||||
| +			  <signal name="cursor_changed" handler="on_tvNCMembers_cursor_changed" last_modification_time="Tue, 30 Jun 2009 15:15:42 GMT"/>
 | ||||
|  			</widget> | ||||
|  		      </child> | ||||
|  		    </widget> | ||||
| @@ -3693,6 +3694,7 @@ DTR/DSR (Hardware)</property>
 | ||||
|  			  <child> | ||||
|  			    <widget class="GtkButton" id="btnNCAddMember"> | ||||
|  			      <property name="visible">True</property> | ||||
| +			      <property name="sensitive">False</property>
 | ||||
|  			      <property name="can_default">True</property> | ||||
|  			      <property name="can_focus">True</property> | ||||
|  			      <property name="relief">GTK_RELIEF_NORMAL</property> | ||||
| @@ -3771,6 +3773,7 @@ DTR/DSR (Hardware)</property>
 | ||||
|  			  <child> | ||||
|  			    <widget class="GtkButton" id="btnNCDelMember"> | ||||
|  			      <property name="visible">True</property> | ||||
| +			      <property name="sensitive">False</property>
 | ||||
|  			      <property name="can_default">True</property> | ||||
|  			      <property name="can_focus">True</property> | ||||
|  			      <property name="relief">GTK_RELIEF_NORMAL</property> | ||||
| @@ -3823,6 +3826,7 @@ DTR/DSR (Hardware)</property>
 | ||||
|  			  <property name="fixed_height_mode">False</property> | ||||
|  			  <property name="hover_selection">False</property> | ||||
|  			  <property name="hover_expand">False</property> | ||||
| +			  <signal name="cursor_changed" handler="on_tvNCNotMembers_cursor_changed" last_modification_time="Tue, 30 Jun 2009 15:15:49 GMT"/>
 | ||||
|  			</widget> | ||||
|  		      </child> | ||||
|  		    </widget> | ||||
| diff -up system-config-printer-1.1.8/system-config-printer.py.arrows system-config-printer-1.1.8/system-config-printer.py
 | ||||
| --- system-config-printer-1.1.8/system-config-printer.py.arrows	2009-07-03 18:18:36.478996538 +0100
 | ||||
| +++ system-config-printer-1.1.8/system-config-printer.py	2009-07-03 18:18:50.643996718 +0100
 | ||||
| @@ -174,7 +174,6 @@ def moveClassMembers(treeview_from, tree
 | ||||
|      for row in rows: | ||||
|          path = row.get_path() | ||||
|          iter = model_from.get_iter(path) | ||||
| -
 | ||||
|          row_data = model_from.get(iter, 0) | ||||
|          model_to.append(row_data) | ||||
|          model_from.remove(iter) | ||||
| @@ -3547,6 +3546,8 @@ class NewPrinterGUI(GtkGUI):
 | ||||
|                                "entNPTDevice", | ||||
|                                "tvNCMembers", | ||||
|                                "tvNCNotMembers", | ||||
| +                              "btnNCAddMember",
 | ||||
| +                              "btnNCDelMember",
 | ||||
|                                "ntbkPPDSource", | ||||
|                                "rbtnNPPPD", | ||||
|                                "tvNPMakes", | ||||
| @@ -4089,11 +4090,23 @@ class NewPrinterGUI(GtkGUI):
 | ||||
|          moveClassMembers(self.tvNCNotMembers, self.tvNCMembers) | ||||
|          self.btnNPApply.set_sensitive( | ||||
|              bool(getCurrentClassMembers(self.tvNCMembers))) | ||||
| +        button.set_sensitive(False)
 | ||||
|   | ||||
|      def on_btnNCDelMember_clicked(self, button): | ||||
|          moveClassMembers(self.tvNCMembers, self.tvNCNotMembers) | ||||
|          self.btnNPApply.set_sensitive( | ||||
|              bool(getCurrentClassMembers(self.tvNCMembers))) | ||||
| +        button.set_sensitive(False)
 | ||||
| +
 | ||||
| +    def on_tvNCMembers_cursor_changed(self, widget):
 | ||||
| +        selection = widget.get_selection()
 | ||||
| +        model_from, rows = selection.get_selected_rows()
 | ||||
| +        self.btnNCDelMember.set_sensitive(rows != [])
 | ||||
| +
 | ||||
| +    def on_tvNCNotMembers_cursor_changed(self, widget):
 | ||||
| +        selection = widget.get_selection()
 | ||||
| +        model_from, rows = selection.get_selected_rows()
 | ||||
| +        self.btnNCAddMember.set_sensitive(rows != [])
 | ||||
|   | ||||
|      # Navigation buttons | ||||
|   | ||||
| @ -1,15 +0,0 @@ | ||||
| diff -up system-config-printer-1.1.8/system-config-printer.py.bug507489 system-config-printer-1.1.8/system-config-printer.py
 | ||||
| --- system-config-printer-1.1.8/system-config-printer.py.bug507489	2009-06-17 18:39:51.000000000 +0100
 | ||||
| +++ system-config-printer-1.1.8/system-config-printer.py	2009-06-23 12:23:49.888572438 +0100
 | ||||
| @@ -6644,6 +6644,11 @@ class NewPrinterGUI(GtkGUI):
 | ||||
|   | ||||
|              iter = model.iter_next (iter) | ||||
|   | ||||
| +        # Load information about the printer,
 | ||||
| +        # e.g. self.mainapp.server_side_options and self.mainapp.ppd
 | ||||
| +        # (both used below).
 | ||||
| +        self.mainapp.fillPrinterTab (name)
 | ||||
| +
 | ||||
|          if check: | ||||
|              try: | ||||
|                  self.checkDriverExists (name, ppd=checkppd) | ||||
| @ -1,14 +0,0 @@ | ||||
| diff -up system-config-printer-1.1.8/cupshelpers/cupshelpers.py.gutenprint system-config-printer-1.1.8/cupshelpers/cupshelpers.py
 | ||||
| --- system-config-printer-1.1.8/cupshelpers/cupshelpers.py.gutenprint	2009-06-17 18:39:51.000000000 +0100
 | ||||
| +++ system-config-printer-1.1.8/cupshelpers/cupshelpers.py	2009-07-03 18:09:03.598995561 +0100
 | ||||
| @@ -736,8 +736,10 @@ def missingPackagesAndExecutables(ppd):
 | ||||
|              # IJS servers (used by foomatic) | ||||
|              'hpijs': 'hpijs', | ||||
|              'ijsgutenprint.5.0': 'gutenprint', | ||||
| +            'ijsgutenprint.5.2': 'gutenprint',
 | ||||
|              # CUPS filters | ||||
|              'rastertogutenprint.5.0': 'gutenprint-cups', | ||||
| +            'rastertogutenprint.5.2': 'gutenprint-cups',
 | ||||
|              'commandtoepson': 'gutenprint-cups', | ||||
|              'commandtocanon': 'gutenprint-cups', | ||||
|              } | ||||
| @ -1,29 +0,0 @@ | ||||
| diff -up system-config-printer-1.1.8/system-config-printer.py.https system-config-printer-1.1.8/system-config-printer.py
 | ||||
| --- system-config-printer-1.1.8/system-config-printer.py.https	2009-06-24 10:46:14.873192155 +0100
 | ||||
| +++ system-config-printer-1.1.8/system-config-printer.py	2009-06-24 10:46:25.057317039 +0100
 | ||||
| @@ -5431,7 +5431,13 @@ class NewPrinterGUI(GtkGUI):
 | ||||
|              (host, port) = urllib.splitnport (host, defport=port) | ||||
|   | ||||
|          try: | ||||
| -            c = cups.Connection (host=host, port=port)
 | ||||
| +            if self.device.type == "https":
 | ||||
| +                encrypt = cups.HTTP_ENCRYPT_ALWAYS
 | ||||
| +            else:
 | ||||
| +                encrypt = cups.HTTP_ENCRYPT_IF_REQUESTED
 | ||||
| +
 | ||||
| +            c = cups.Connection (host=host, port=port,
 | ||||
| +                                 encryption=encrypt)
 | ||||
|              printers = c.getPrinters () | ||||
|              del c | ||||
|          except cups.IPPError, (e, m): | ||||
| @@ -5492,6 +5498,10 @@ class NewPrinterGUI(GtkGUI):
 | ||||
|              self.entNPTIPPHostname.set_text (match.group (2)) | ||||
|              self.entNPTIPPQueuename.set_text (match.group (3)) | ||||
|   | ||||
| +        if self.device.type == "https" and uri.startswith ("ipp:"):
 | ||||
| +            # Use https in our device URI for this printer.
 | ||||
| +            uri = "https:" + uri[4:]
 | ||||
| +
 | ||||
|          self.lblIPPURI.set_text (uri) | ||||
|          self.lblIPPURI.show() | ||||
|          self.setNPButtons() | ||||
| @ -1,12 +0,0 @@ | ||||
| diff -up system-config-printer-1.1.8/authconn.py.incorrect-auth system-config-printer-1.1.8/authconn.py
 | ||||
| --- system-config-printer-1.1.8/authconn.py.incorrect-auth	2009-06-18 16:45:49.000000000 +0100
 | ||||
| +++ system-config-printer-1.1.8/authconn.py	2009-06-25 17:51:23.943329108 +0100
 | ||||
| @@ -389,6 +389,8 @@ class Connection:
 | ||||
|                        _("The password may be incorrect.")) | ||||
|          if self._lock: | ||||
|              d.connect ("response", self._on_not_authorized_dialog_response) | ||||
| +            d.show_all ()
 | ||||
| +            d.show_now ()
 | ||||
|              gtk.gdk.threads_leave () | ||||
|          else: | ||||
|              d.run () | ||||
| @ -1,12 +0,0 @@ | ||||
| diff -up system-config-printer-1.1.8/system-config-printer.py.ipp-nonfatal-exception system-config-printer-1.1.8/system-config-printer.py
 | ||||
| --- system-config-printer-1.1.8/system-config-printer.py.ipp-nonfatal-exception	2009-06-24 10:28:47.773317435 +0100
 | ||||
| +++ system-config-printer-1.1.8/system-config-printer.py	2009-06-24 10:29:24.339192122 +0100
 | ||||
| @@ -4167,6 +4167,8 @@ class NewPrinterGUI(GtkGUI):
 | ||||
|                              self.entNPDescription.set_text (info) | ||||
|                          if len (location) > 0: | ||||
|                              self.entNPLocation.set_text (location) | ||||
| +                    except RuntimeError:
 | ||||
| +                        pass
 | ||||
|                      except: | ||||
|                          nonfatalException () | ||||
|   | ||||
| @ -1,14 +0,0 @@ | ||||
| diff -U0 system-config-printer-1.1.8/ChangeLog.nmblookup-failure system-config-printer-1.1.8/ChangeLog
 | ||||
| diff -up system-config-printer-1.1.8/troubleshoot/CheckPrinterSanity.py.nmblookup-failure system-config-printer-1.1.8/troubleshoot/CheckPrinterSanity.py
 | ||||
| --- system-config-printer-1.1.8/troubleshoot/CheckPrinterSanity.py.nmblookup-failure	2009-05-12 10:36:36.000000000 +0100
 | ||||
| +++ system-config-printer-1.1.8/troubleshoot/CheckPrinterSanity.py	2009-06-25 17:49:39.628328710 +0100
 | ||||
| @@ -99,7 +99,8 @@ class CheckPrinterSanity(Question):
 | ||||
|                          if line.startswith ("querying"): | ||||
|                              continue | ||||
|                          spc = line.find (' ') | ||||
| -                        if spc != -1:
 | ||||
| +                        if (spc != -1 and
 | ||||
| +                            not line[spc:].startswith (" failed ")):
 | ||||
|                              # Remember the IP address. | ||||
|                              self.answers['remote_server_name'] = line[:spc] | ||||
|                              break | ||||
| @ -1,77 +0,0 @@ | ||||
| diff -up system-config-printer-1.1.8/installpackage.py.packagekit system-config-printer-1.1.8/installpackage.py
 | ||||
| --- system-config-printer-1.1.8/installpackage.py.packagekit	2009-05-12 10:36:36.000000000 +0100
 | ||||
| +++ system-config-printer-1.1.8/installpackage.py	2009-07-03 18:07:09.560995667 +0100
 | ||||
| @@ -2,8 +2,8 @@
 | ||||
|   | ||||
|  ## system-config-printer | ||||
|   | ||||
| -## Copyright (C) 2008 Red Hat, Inc.
 | ||||
| -## Copyright (C) 2008 Tim Waugh <twaugh@redhat.com>
 | ||||
| +## Copyright (C) 2008, 2009 Red Hat, Inc.
 | ||||
| +## Copyright (C) 2008, 2009 Tim Waugh <twaugh@redhat.com>
 | ||||
|   | ||||
|  ## This program is free software; you can redistribute it and/or modify | ||||
|  ## it under the terms of the GNU General Public License as published by | ||||
| @@ -19,53 +19,18 @@
 | ||||
|  ## along with this program; if not, write to the Free Software | ||||
|  ## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | ||||
|   | ||||
| -import dbus
 | ||||
| -import xml.etree.ElementTree
 | ||||
| -from dbus.mainloop.glib import DBusGMainLoop
 | ||||
| -DBusGMainLoop (set_as_default=True)
 | ||||
| +import os
 | ||||
| +import glib
 | ||||
|   | ||||
|  class PackageKit: | ||||
|      def __init__ (self): | ||||
| -        bus = dbus.SessionBus ()
 | ||||
| -        obj = bus.get_object ("org.freedesktop.PackageKit",
 | ||||
| -                              "/org/freedesktop/PackageKit")
 | ||||
| -
 | ||||
| -        # Find out which API is required.
 | ||||
| -        num_args = -1
 | ||||
| -        introsp = dbus.Interface (obj, "org.freedesktop.DBus.Introspectable")
 | ||||
| -        api = introsp.Introspect ()
 | ||||
| -        top = xml.etree.ElementTree.XML (api)
 | ||||
| -        for interface in top.findall ("interface"):
 | ||||
| -            if interface.attrib.get ("name") != "org.freedesktop.PackageKit":
 | ||||
| -                continue
 | ||||
| -
 | ||||
| -            for method in interface.findall ("method"):
 | ||||
| -                if method.attrib.get ("name") != "InstallPackageName":
 | ||||
| -                    continue
 | ||||
| +        for dir in os.environ.get ("PATH", "").split (":"):
 | ||||
| +            path = dir + os.path.sep + "gpk-install-package-name"
 | ||||
| +            if os.access (path, os.X_OK):
 | ||||
| +                self.gpk_install_package_name = path
 | ||||
| +                return
 | ||||
|   | ||||
| -                num_args = len (method.findall ("arg"))
 | ||||
| -                break
 | ||||
| -
 | ||||
| -        if num_args == -1:
 | ||||
| -            raise RuntimeError, "Introspection failed for PackageKit"
 | ||||
| -
 | ||||
| -        self.proxy = dbus.Interface (obj, "org.freedesktop.PackageKit")
 | ||||
| -        self.num_args = num_args
 | ||||
| +        raise RuntimeError, "No gpk-install-package-name program available"
 | ||||
|   | ||||
|      def InstallPackageName (self, xid, timestamp, name): | ||||
| -        proxy = self.proxy
 | ||||
| -        if self.num_args == 3:
 | ||||
| -            return proxy.InstallPackageName (xid, timestamp, name,
 | ||||
| -                                             reply_handler=self.reply_handler,
 | ||||
| -                                             error_handler=self.error_handler)
 | ||||
| -        else:
 | ||||
| -            # Old PackageKit interface
 | ||||
| -            return proxy.InstallPackageName (name,
 | ||||
| -                                             reply_handler=self.reply_handler,
 | ||||
| -                                             error_handler=self.error_handler)
 | ||||
| -
 | ||||
| -    def reply_handler (self, *args):
 | ||||
| -        pass
 | ||||
| -
 | ||||
| -    def error_handler (self, *args):
 | ||||
| -        pass
 | ||||
| +        glib.spawn_async ([self.gpk_install_package_name, name])
 | ||||
| @ -1,12 +0,0 @@ | ||||
| diff -up system-config-printer-1.1.8/system-config-printer.py.properties-cancel system-config-printer-1.1.8/system-config-printer.py
 | ||||
| --- system-config-printer-1.1.8/system-config-printer.py.properties-cancel	2009-06-25 17:50:16.256328643 +0100
 | ||||
| +++ system-config-printer-1.1.8/system-config-printer.py	2009-06-25 17:50:37.650328968 +0100
 | ||||
| @@ -1045,7 +1045,7 @@ class GUI(GtkGUI, monitor.Watcher):
 | ||||
|   | ||||
|          if ((response == gtk.RESPONSE_OK and not success) or | ||||
|              response == gtk.RESPONSE_CANCEL): | ||||
| -            del self.printer
 | ||||
| +            self.printer = None
 | ||||
|              dialog.hide () | ||||
|   | ||||
|      def dests_iconview_selection_changed (self, iconview): | ||||
| @ -1,18 +0,0 @@ | ||||
| diff -up system-config-printer-1.1.8/system-config-printer.py.remote-location-field system-config-printer-1.1.8/system-config-printer.py
 | ||||
| --- system-config-printer-1.1.8/system-config-printer.py.remote-location-field	2009-06-25 17:46:36.895328974 +0100
 | ||||
| +++ system-config-printer-1.1.8/system-config-printer.py	2009-06-25 17:46:52.622454030 +0100
 | ||||
| @@ -5791,8 +5791,12 @@ class NewPrinterGUI(GtkGUI):
 | ||||
|          try: | ||||
|              if len (location) == 0 and self.device.device_class == "direct": | ||||
|                  # Set location to the name of this host. | ||||
| -                u = os.uname ()
 | ||||
| -                location = u[1]
 | ||||
| +                if (self.mainapp.connect_server == 'localhost' or
 | ||||
| +                    self.mainapp.connect_server[0] == '/'):
 | ||||
| +                    u = os.uname ()
 | ||||
| +                    location = u[1]
 | ||||
| +                else:
 | ||||
| +                    location = self.mainapp.connect_server
 | ||||
|   | ||||
|              # Pre-fill location field. | ||||
|              self.entNPLocation.set_text (location) | ||||
| @ -1,15 +0,0 @@ | ||||
| diff -up system-config-printer-1.1.8/jobviewer.py.stopped-jobs system-config-printer-1.1.8/jobviewer.py
 | ||||
| --- system-config-printer-1.1.8/jobviewer.py.stopped-jobs	2009-06-17 18:39:51.000000000 +0100
 | ||||
| +++ system-config-printer-1.1.8/jobviewer.py	2009-07-03 18:08:28.040995881 +0100
 | ||||
| @@ -1375,7 +1375,10 @@ class JobViewer (GtkGUI, monitor.Watcher
 | ||||
|                  self.notify_completed_job (jobid) | ||||
|   | ||||
|          # Look out for stopped jobs. | ||||
| -        if (self.trayicon and eventname == 'job-stopped' and
 | ||||
| +        if (self.trayicon and
 | ||||
| +            (eventname == 'job-stopped' or
 | ||||
| +             (eventname == 'job-state-changed' and
 | ||||
| +              event['job-state'] == cups.IPP_JOB_STOPPED))and
 | ||||
|              not jobid in self.stopped_job_prompts): | ||||
|              # Why has the job stopped?  It might be due to a job error | ||||
|              # of some sort, or it might be that the backend requires | ||||
| @ -6,25 +6,14 @@ | ||||
| 
 | ||||
| Summary: A printer administration tool | ||||
| Name: system-config-printer | ||||
| Version: 1.1.8 | ||||
| Release: 6%{?dist} | ||||
| Version: 1.1.10 | ||||
| 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.1/system-config-printer-%{version}.tar.bz2 | ||||
| Source1: http://cyberelk.net/tim/data/pycups/pycups-%{pycups_version}.tar.bz2 | ||||
| Source2: http://cyberelk.net/tim/data/pysmbc/pysmbc-%{pysmbc_version}.tar.bz2 | ||||
| Patch1: system-config-printer-bug507489.patch | ||||
| Patch2: system-config-printer-ipp-nonfatal-exception.patch | ||||
| Patch3: system-config-printer-https.patch | ||||
| Patch4: system-config-printer-remote-location-field.patch | ||||
| Patch5: system-config-printer-nmblookup-failure.patch | ||||
| Patch6: system-config-printer-properties-cancel.patch | ||||
| Patch7: system-config-printer-incorrect-auth.patch | ||||
| Patch8: system-config-printer-packagekit.patch | ||||
| Patch9: system-config-printer-stopped-jobs.patch | ||||
| Patch10: system-config-printer-gutenprint.patch | ||||
| Patch11: system-config-printer-arrows.patch | ||||
| 
 | ||||
| BuildRequires: cups-devel >= 1.2 | ||||
| BuildRequires: python-devel >= 2.4 | ||||
| @ -32,6 +21,7 @@ BuildRequires: libsmbclient-devel >= 3.2 | ||||
| BuildRequires: desktop-file-utils >= 0.2.92 | ||||
| BuildRequires: gettext-devel | ||||
| BuildRequires: intltool | ||||
| BuildRequires: libusb-devel, libudev-devel | ||||
| BuildRequires: xmlto | ||||
| BuildRequires: epydoc | ||||
| BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) | ||||
| @ -73,22 +63,22 @@ Provides: pysmbc = %{pysmbc_version} | ||||
| The common code used by both the graphical and non-graphical parts of | ||||
| the configuration tool. | ||||
| 
 | ||||
| %package udev | ||||
| Summary: Rules for udev for automatic configuration of USB printers | ||||
| Group: System Environment/Base | ||||
| Requires: system-config-printer-libs = %{version}-%{release} | ||||
| Obsoletes: hal-cups-utils <= 0.6.20 | ||||
| Provides: hal-cups-utils = 0.6.20 | ||||
| 
 | ||||
| %description udev | ||||
| The udev rules and helper programs for automatically configuring USB | ||||
| printers. | ||||
| 
 | ||||
| %prep | ||||
| %setup -q -a 1 -a 2 | ||||
| %patch1 -p1 -b .bug507489 | ||||
| %patch2 -p1 -b .ipp-nonfatal-exception | ||||
| %patch3 -p1 -b .https | ||||
| %patch4 -p1 -b .remote-location-field | ||||
| %patch5 -p1 -b .nmblookup-failure | ||||
| %patch6 -p1 -b .properties-cancel | ||||
| %patch7 -p1 -b .incorrect-auth | ||||
| %patch8 -p1 -b .packagekit | ||||
| %patch9 -p1 -b .stopped-jobs | ||||
| %patch10 -p1 -b .gutenprint | ||||
| %patch11 -p1 -b .arrows | ||||
| 
 | ||||
| %build | ||||
| %configure | ||||
| %configure --with-udev-rules | ||||
| 
 | ||||
| pushd pycups-%{pycups_version} | ||||
| make | ||||
| @ -133,6 +123,11 @@ rm -rf %buildroot | ||||
| %{python_sitelib}/cupshelpers/ppds.py* | ||||
| %{python_sitelib}/*.egg-info | ||||
| 
 | ||||
| %files udev | ||||
| %defattr(-,root,root,-) | ||||
| %{_sysconfdir}/udev/rules.d/*.rules | ||||
| /lib/udev/* | ||||
| 
 | ||||
| %files | ||||
| %defattr(-,root,root,-) | ||||
| %doc ChangeLog README | ||||
| @ -188,6 +183,19 @@ rm -rf %buildroot | ||||
| exit 0 | ||||
| 
 | ||||
| %changelog | ||||
| * Wed Jul 22 2009 Tim Waugh <twaugh@redhat.com> 1.1.10-1 | ||||
| - 1.1.10: | ||||
|   - New udev rules for adding/enabling/disabling USB printers | ||||
|     automatically. | ||||
|   - Now uses gnome-packagekit utility to install packages | ||||
|     instead of the D-Bus API. | ||||
|   - Fixed detection of stopped jobs with CUPS 1.4. | ||||
|   - Fixed tracebacks when adding a new printer and when receiving | ||||
|     IPP notifications. | ||||
|   - Fixed 'location' field for printers added on remote CUPS servers. | ||||
|   - Fixed handling of incorrect authentication. | ||||
|   - Some UI and troubleshooter fixes have been made. | ||||
| 
 | ||||
| * Mon Jul  6 2009 Tim Waugh <twaugh@redhat.com> 1.1.8-6 | ||||
| - Requires gnome-packagekit for gpk-install-package-name. | ||||
| 
 | ||||
|  | ||||
| @ -1,36 +1,36 @@ | ||||
| -----BEGIN PGP PUBLIC KEY BLOCK----- | ||||
| Version: GnuPG v1.4.7 (GNU/Linux) | ||||
| Version: GnuPG v1.4.9 (GNU/Linux) | ||||
| 
 | ||||
| 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 | ||||
| L7PW | ||||
| =wzDO | ||||
| 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 | ||||
| JofS | ||||
| =vrpj | ||||
| -----END PGP PUBLIC KEY BLOCK----- | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user