app-admin/system-config-printer: Drop 1.5.12-r2

Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
This commit is contained in:
Andreas Sturmlechner
2020-11-25 18:44:02 +01:00
parent 595010c7d1
commit 0e666d4777
5 changed files with 0 additions and 419 deletions

View File

@@ -1,22 +0,0 @@
From feed693225cc0c26464bfc0adef21da72581e811 Mon Sep 17 00:00:00 2001
From: Zdenek Dohnal <zdohnal@redhat.com>
Date: Thu, 28 Nov 2019 15:45:22 +0100
Subject: [PATCH] Catch errors from urllib too
---
newprinter.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/newprinter.py b/newprinter.py
index 8b9298887..6c71ec578 100644
--- a/newprinter.py
+++ b/newprinter.py
@@ -4183,7 +4183,7 @@ def getNPPPD(self):
tmpf.flush ()
ppd = cups.PPD(tmpf.name)
- except RuntimeError as e:
+ except (RuntimeError, urllib.error.HTTPError) as e:
debugprint ("RuntimeError: " + repr (e))
if self.rbtnNPFoomatic.get_active():
# Foomatic database problem of some sort.

View File

@@ -1,121 +0,0 @@
From b74c701feb52a1d2865fe1d33c393f71ae3ac47a Mon Sep 17 00:00:00 2001
From: Ave Ozkal <ave@ave.zone>
Date: Thu, 19 Mar 2020 13:30:23 +0300
Subject: [PATCH 1/3] jobviewer: Use sync methods for secret.service
---
jobviewer.py | 28 +++++++++-------------------
1 file changed, 9 insertions(+), 19 deletions(-)
diff --git a/jobviewer.py b/jobviewer.py
index b95bf6c58..ba8abd06f 100644
--- a/jobviewer.py
+++ b/jobviewer.py
@@ -91,36 +91,26 @@
class ServiceGet:
service = Secret.Service()
- def on_get_service(self, source, result, unused):
- service = Secret.Service.get_finish(result)
-
def __init__(self):
- Secret.Service.get(0,
- None,
- self.on_get_service,
- None)
+ self.service = Secret.Service.get(0,
+ None)
def get_service(self):
- return ServiceGet.service
+ return self.service
class ItemSearch:
items = list()
- def on_search_item(self, source, result, unused):
- items = Secret.Service.search_finish(None, result)
-
def __init__(self, service, attrs):
- Secret.Service.search(service,
- NETWORK_PASSWORD,
- attrs,
- Secret.SearchFlags.LOAD_SECRETS,
- None,
- self.on_search_item,
- None)
+ self.items = Secret.Service.search_sync(service,
+ NETWORK_PASSWORD,
+ attrs,
+ Secret.SearchFlags.LOAD_SECRETS,
+ None)
def get_items(self):
- return ItemSearch.items
+ return self.items
class PasswordStore:
From 152b617f511cd44757d2db4d730067aca8cf69a9 Mon Sep 17 00:00:00 2001
From: Ave Ozkal <ave@ave.zone>
Date: Thu, 19 Mar 2020 14:39:21 +0300
Subject: [PATCH 2/3] jobviewer: properly use sync
---
jobviewer.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/jobviewer.py b/jobviewer.py
index ba8abd06f..761673b49 100644
--- a/jobviewer.py
+++ b/jobviewer.py
@@ -92,8 +92,8 @@ class ServiceGet:
service = Secret.Service()
def __init__(self):
- self.service = Secret.Service.get(0,
- None)
+ self.service = Secret.Service.get_sync(0,
+ None)
def get_service(self):
return self.service
From 00177768ca1464c694acde4cdbabc1a18420c176 Mon Sep 17 00:00:00 2001
From: Ave Ozkal <ave@ave.zone>
Date: Thu, 19 Mar 2020 14:40:55 +0300
Subject: [PATCH 3/3] jobviewer: Properly fetch username and password
---
jobviewer.py | 14 ++------------
1 file changed, 2 insertions(+), 12 deletions(-)
diff --git a/jobviewer.py b/jobviewer.py
index 761673b49..5376a7e88 100644
--- a/jobviewer.py
+++ b/jobviewer.py
@@ -1049,20 +1049,10 @@ def get_authentication (self, job, device_uri, printer_uri,
if items:
auth_info = ['' for x in auth_info_required]
ind = auth_info_required.index ('username')
-
- for attr in items[0].attributes:
- # It might be safe to assume here that the
- # user element is always the second item in a
- # NETWORK_PASSWORD element but lets make sure.
- if attr.name == 'user':
- auth_info[ind] = attr.get_string()
- break
- else:
- debugprint ("Did not find username keyring "
- "attributes.")
+ auth_info[ind] = items[0].get_attributes().get("user")
ind = auth_info_required.index ('password')
- auth_info[ind] = items[0].secret
+ auth_info[ind] = items[0].get_secret().get().decode()
break
else:
debugprint ("Failed to find secret in keyring.")

View File

@@ -1,45 +0,0 @@
From cf7a74217558b19aff7c21a724878bcc15dc4e38 Mon Sep 17 00:00:00 2001
From: Zdenek Dohnal <zdohnal@redhat.com>
Date: Mon, 5 Oct 2020 09:26:40 +0200
Subject: [PATCH] isAlive() is removed, use is_alive()
---
asyncipp.py | 2 +-
timedops.py | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/asyncipp.py b/asyncipp.py
index 5bc160e0f..61cd72136 100644
--- a/asyncipp.py
+++ b/asyncipp.py
@@ -269,7 +269,7 @@ def destroy (self):
for binding in self.bindings:
delattr (self, binding)
- if self.thread.isAlive ():
+ if self.thread.is_alive ():
debugprint ("Stopping worker thread")
self.thread.stop ()
GLib.timeout_add_seconds (1, self._reap_thread)
diff --git a/timedops.py b/timedops.py
index 8a8741c82..111d575f6 100644
--- a/timedops.py
+++ b/timedops.py
@@ -157,7 +157,7 @@ def run (self):
self.exception = e
def collect_result (self):
- if self.isAlive ():
+ if self.is_alive ():
# We've been canceled.
raise OperationCanceled()
@@ -212,7 +212,7 @@ def run (self):
return self.thread.collect_result ()
def _check_thread (self):
- if self.thread.isAlive ():
+ if self.thread.is_alive ():
# Thread still running.
return True

View File

@@ -1,147 +0,0 @@
From 63eccd5603e19cd35d6d44af65443665a3c63f38 Mon Sep 17 00:00:00 2001
From: Zdenek Dohnal <zdohnal@redhat.com>
Date: Wed, 22 Jul 2020 13:57:13 +0200
Subject: [PATCH] python3.9 - xml module removed elem.getchildren() method, use
list(elem)
---
cupshelpers/openprinting.py | 6 +++---
cupshelpers/xmldriverprefs.py | 20 ++++++++++----------
xml/validate.py | 10 +++++-----
3 files changed, 18 insertions(+), 18 deletions(-)
diff --git a/cupshelpers/openprinting.py b/cupshelpers/openprinting.py
index c616d913c..9bb4764c9 100755
--- a/cupshelpers/openprinting.py
+++ b/cupshelpers/openprinting.py
@@ -338,7 +338,7 @@ def parse_result (status, data, result):
packages = {}
container = driver.find ('packages')
if container is not None:
- for arch in container.getchildren ():
+ for arch in list(container):
rpms = {}
for package in arch.findall ('package'):
rpm = {}
@@ -351,7 +351,7 @@ def parse_result (status, data, result):
repositories = package.find ('repositories')
if repositories is not None:
- for pkgsys in repositories.getchildren ():
+ for pkgsys in list(repositories):
rpm.setdefault('repositories', {})[pkgsys.tag] = pkgsys.text
rpms[package.attrib['file']] = rpm
@@ -363,7 +363,7 @@ def parse_result (status, data, result):
ppds = []
container = driver.find ('ppds')
if container is not None:
- for each in container.getchildren ():
+ for each in list(container):
ppds.append (each.text)
if ppds:
diff --git a/cupshelpers/xmldriverprefs.py b/cupshelpers/xmldriverprefs.py
index 4177e1c0f..0d02950f4 100644
--- a/cupshelpers/xmldriverprefs.py
+++ b/cupshelpers/xmldriverprefs.py
@@ -27,7 +27,7 @@
def PreferredDrivers (filename):
preferreddrivers = xml.etree.ElementTree.XML (open (filename).read ())
- return preferreddrivers.getchildren()
+ return list(preferreddrivers)
class DeviceIDMatch:
"""
@@ -227,10 +227,10 @@ def load (self, drivertypes):
"""
types = []
- for drivertype in drivertypes.getchildren ():
+ for drivertype in list(drivertypes):
t = DriverType (drivertype.attrib["name"])
- for child in drivertype.getchildren ():
+ for child in list(drivertype):
if child.tag == "ppdname":
t.add_ppd_name (child.attrib["match"])
elif child.tag == "attribute":
@@ -238,7 +238,7 @@ def load (self, drivertypes):
child.attrib["match"])
elif child.tag == "deviceid":
deviceid_match = DeviceIDMatch ()
- for field in child.getchildren ():
+ for field in list(child):
if field.tag == "field":
deviceid_match.add_field (field.attrib["name"],
field.attrib["match"])
@@ -414,29 +414,29 @@ def load (self, preferreddrivers):
Load the policy from an XML file.
"""
- for printer in preferreddrivers.getchildren ():
+ for printer in list(preferreddrivers):
ptype = PrinterType ()
- for child in printer.getchildren ():
+ for child in list(printer):
if child.tag == "make-and-model":
ptype.add_make_and_model (child.attrib["match"])
elif child.tag == "deviceid":
deviceid_match = DeviceIDMatch ()
- for field in child.getchildren ():
+ for field in list(child):
if field.tag == "field":
deviceid_match.add_field (field.attrib["name"],
field.attrib["match"])
ptype.add_deviceid_match (deviceid_match)
elif child.tag == "drivers":
- for drivertype in child.getchildren ():
+ for drivertype in list(child):
ptype.add_drivertype_pattern (drivertype.text)
elif child.tag == "avoid":
- for drivertype in child.getchildren ():
+ for drivertype in list(child):
ptype.add_avoidtype_pattern (drivertype.text)
elif child.tag == "blacklist":
- for drivertype in child.getchildren ():
+ for drivertype in list(child):
ptype.add_blacklisted (drivertype.text)
self.ptypes.append (ptype)
diff --git a/xml/validate.py b/xml/validate.py
index 8fc201ecf..ba16766dc 100644
--- a/xml/validate.py
+++ b/xml/validate.py
@@ -35,23 +35,23 @@ def validate (self):
filename = self._filename
print ("Validating %s" % filename)
preferreddrivers = xml.etree.ElementTree.XML (open (filename).read ())
- (drivertypes, preferenceorder) = preferreddrivers.getchildren ()
+ (drivertypes, preferenceorder) = list(preferreddrivers)
validates = True
names = set()
- for drivertype in drivertypes.getchildren ():
+ for drivertype in list(drivertypes):
name = drivertype.get ("name")
names.add (name)
- for printer in preferenceorder.getchildren ():
+ for printer in list(preferenceorder):
types = []
drivers = printer.find ("drivers")
if drivers is not None:
- types.extend (drivers.getchildren ())
+ types.extend (list(drivers))
blacklist = printer.find ("blacklist")
if blacklist is not None:
- types.extend (blacklist.getchildren ())
+ types.extend (list(blacklist))
for drivertype in types:
pattern = drivertype.text.strip ()

View File

@@ -1,84 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{7,8,9} )
PYTHON_REQ_USE="xml"
inherit python-single-r1 systemd xdg
DESCRIPTION="Graphical user interface for CUPS administration"
HOMEPAGE="https://github.com/OpenPrinting/system-config-printer"
SRC_URI="https://github.com/OpenPrinting/${PN}/releases/download/${PV}/${P}.tar.xz"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
IUSE="gnome-keyring policykit"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
# Needs cups running, bug 284005
RESTRICT="test"
# Additional unhandled dependencies
# gnome-extra/gnome-packagekit[${PYTHON_USEDEP}] with pygobject:2 ?
# python samba client: smbc
# selinux: needed for troubleshooting
COMMON_DEPEND="${PYTHON_DEPS}
dev-libs/glib:2
net-print/cups[dbus]
virtual/libusb:1
>=virtual/udev-172
x11-libs/gtk+:3[introspection]
x11-libs/libnotify[introspection]
x11-libs/pango[introspection]
"
DEPEND="${COMMON_DEPEND}
app-text/docbook-xml-dtd:4.1.2
>=app-text/xmlto-0.0.22
dev-perl/XML-Parser
dev-util/desktop-file-utils
dev-util/intltool
sys-devel/gettext
virtual/pkgconfig
"
RDEPEND="${COMMON_DEPEND}
$(python_gen_cond_dep '
dev-python/dbus-python[${PYTHON_MULTI_USEDEP}]
dev-python/pycairo[${PYTHON_MULTI_USEDEP}]
dev-python/pycups[${PYTHON_MULTI_USEDEP}]
dev-python/pygobject:3[${PYTHON_MULTI_USEDEP}]
dev-python/requests[${PYTHON_MULTI_USEDEP}]
dev-python/urllib3[${PYTHON_MULTI_USEDEP}]
')
gnome-keyring? ( app-crypt/libsecret[introspection] )
policykit? ( net-print/cups-pk-helper )
"
PATCHES=(
"${FILESDIR}"/${P}-check-for-null.patch
"${FILESDIR}"/${P}-fix-abrt-in-udev-configure-printer.patch
"${FILESDIR}"/${P}-catch-urllib-errors.patch
"${FILESDIR}"/${P}-fix-remember-passwd.patch
"${FILESDIR}"/${P}-py39-{1,2}.patch
)
pkg_setup() {
python-single-r1_pkg_setup
}
src_configure() {
local myeconfargs=(
--enable-nls
--with-desktop-vendor=Gentoo
--with-udev-rules
--with-systemdsystemunitdir=$(systemd_get_systemunitdir)
)
econf "${myeconfargs[@]}"
}
src_install() {
default
python_fix_shebang "${ED}"
python_optimize
}