mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
app-admin/system-config-printer: Drop 1.5.12-r2
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
This commit is contained in:
@@ -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.
|
||||
@@ -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.")
|
||||
@@ -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
|
||||
|
||||
@@ -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 ()
|
||||
@@ -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
|
||||
}
|
||||
Reference in New Issue
Block a user