aboutsummaryrefslogtreecommitdiff
path: root/sysutils/zeitgeist
diff options
context:
space:
mode:
authorAntoine Brodin <antoine@FreeBSD.org>2020-02-12 18:14:13 +0000
committerAntoine Brodin <antoine@FreeBSD.org>2020-02-12 18:14:13 +0000
commit2ca66f585b4f4685bc56e3d53b4e777292ef3251 (patch)
tree4d404cc532f413c93fb4b121482ac995a735fb82 /sysutils/zeitgeist
parent4a760253bde7cdc1d2c33c1e5cbc040aff1bcd22 (diff)
downloadports-2ca66f585b4f4685bc56e3d53b4e777292ef3251.tar.gz
ports-2ca66f585b4f4685bc56e3d53b4e777292ef3251.zip
Allow using zeitgeist with any version of python
PR: 243704 Approved by: maintainer timeout (2 weeks)
Notes
Notes: svn path=/head/; revision=525925
Diffstat (limited to 'sysutils/zeitgeist')
-rw-r--r--sysutils/zeitgeist/Makefile5
-rw-r--r--sysutils/zeitgeist/files/patch-python_client.py35
-rw-r--r--sysutils/zeitgeist/files/patch-python_datamodel.py130
3 files changed, 168 insertions, 2 deletions
diff --git a/sysutils/zeitgeist/Makefile b/sysutils/zeitgeist/Makefile
index 44c8a5958da4..418ac27979d4 100644
--- a/sysutils/zeitgeist/Makefile
+++ b/sysutils/zeitgeist/Makefile
@@ -4,7 +4,7 @@
PORTNAME= zeitgeist
PORTVERSION= 0.9.16
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= sysutils
MASTER_SITES= https://launchpad.net/${PORTNAME}/${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/}/${PORTVERSION}/+download/
@@ -21,10 +21,11 @@ BUILD_DEPENDS= valac:lang/vala \
RUN_DEPENDS= ${PYTHON_SITELIBDIR}/xdg/__init__.py:devel/py-xdg@${PY_FLAVOR} \
${PYTHON_SITELIBDIR}/dbus/__init__.py:devel/py-dbus@${PY_FLAVOR}
-USES= gettext gmake gnome libtool pathfix pkgconfig python:2.7 sqlite \
+USES= gettext gmake gnome libtool pathfix pkgconfig python sqlite \
tar:xz
USE_GNOME= intlhack glib20 introspection:build
USE_LDCONFIG= yes
+USE_PYTHON= py3kplist
GNU_CONFIGURE= yes
CPPFLAGS+= -I${LOCALBASE}/include
LDFLAGS+= -L${LOCALBASE}/lib
diff --git a/sysutils/zeitgeist/files/patch-python_client.py b/sysutils/zeitgeist/files/patch-python_client.py
new file mode 100644
index 000000000000..87caf6ee2358
--- /dev/null
+++ b/sysutils/zeitgeist/files/patch-python_client.py
@@ -0,0 +1,35 @@
+--- python/client.py.orig 2014-07-03 07:47:07 UTC
++++ python/client.py
+@@ -118,7 +118,7 @@ class _DBusInterface(object):
+
+ try:
+ return method_getter()(*args, **kwargs)
+- except dbus.exceptions.DBusException, e:
++ except dbus.exceptions.DBusException as e:
+ return reconnecting_error_handler(e)
+
+ def __getattr__(self, name):
+@@ -258,7 +258,7 @@ class ZeitgeistDBusInterface(object):
+ try:
+ proxy = get_bus().get_object(self.BUS_NAME,
+ self.OBJECT_PATH, follow_name_owner_changes=True)
+- except dbus.exceptions.DBusException, e:
++ except dbus.exceptions.DBusException as e:
+ if e.get_dbus_name() == "org.freedesktop.DBus.Error.ServiceUnknown":
+ raise RuntimeError(
+ "Found no running zeitgeist-daemon instance: %s" % \
+@@ -1054,11 +1054,11 @@ class ZeitgeistClient:
+ """
+
+ if unique_id not in self._data_sources:
+- raise ValueError, 'set_data_source_enabled_callback() called before ' \
+- 'register_data_source()'
++ raise ValueError('set_data_source_enabled_callback() called before ' \
++ 'register_data_source()')
+
+ if not callable(enabled_callback):
+- raise TypeError, 'enabled_callback: expected a callable method'
++ raise TypeError('enabled_callback: expected a callable method')
+
+ self._data_sources[unique_id]['callback'] = enabled_callback
+
diff --git a/sysutils/zeitgeist/files/patch-python_datamodel.py b/sysutils/zeitgeist/files/patch-python_datamodel.py
new file mode 100644
index 000000000000..88d406dc8ee1
--- /dev/null
+++ b/sysutils/zeitgeist/files/patch-python_datamodel.py
@@ -0,0 +1,130 @@
+--- python/datamodel.py.orig 2014-07-03 07:47:07 UTC
++++ python/datamodel.py
+@@ -26,7 +26,7 @@ import os.path
+ import gettext
+ import time
+ import sys
+-gettext.install("zeitgeist", unicode=1)
++gettext.install("zeitgeist")
+
+ __all__ = [
+ 'Interpretation',
+@@ -121,12 +121,12 @@ class Symbol(str):
+ def _ensure_all_children (self):
+ if self._all_children is not None : return
+ self._all_children = dict()
+- for child in self._children.itervalues():
++ for child in self._children.values():
+ child._visit(self._all_children)
+
+ def _visit (self, dikt):
+ dikt[self.name] = self
+- for child in self._children.itervalues():
++ for child in self._children.values():
+ child._visit(dikt)
+
+ @staticmethod
+@@ -141,7 +141,7 @@ class Symbol(str):
+ children = list(symbol.get_all_children())
+ children.append(uri)
+ return children
+- except KeyError, e:
++ except KeyError as e:
+ return [uri]
+
+
+@@ -174,7 +174,7 @@ class Symbol(str):
+ """
+ Returns a list of immediate child symbols
+ """
+- return frozenset(self._children.itervalues())
++ return frozenset(self._children.values())
+
+ def iter_all_children(self):
+ """
+@@ -182,7 +182,7 @@ class Symbol(str):
+ of this symbol
+ """
+ self._ensure_all_children()
+- return self._all_children.itervalues()
++ return self._all_children.values()
+
+ def get_all_children(self):
+ """
+@@ -194,7 +194,7 @@ class Symbol(str):
+ """
+ Returns a list of immediate parent symbols
+ """
+- return frozenset(self._parents.itervalues())
++ return frozenset(self._parents.values())
+
+ def is_child_of (self, parent):
+ """
+@@ -203,7 +203,7 @@ class Symbol(str):
+ if not isinstance (parent, Symbol):
+ try:
+ parent = _SYMBOLS_BY_URI[parent]
+- except KeyError, e:
++ except KeyError as e:
+ # Parent is not a known URI
+ return self.uri == parent
+
+@@ -226,7 +226,7 @@ class Symbol(str):
+ if isinstance (child, basestring):
+ try:
+ child = _SYMBOLS_BY_URI[child]
+- except KeyError, e:
++ except KeyError as e:
+ # Child is not a know URI
+ if isinstance (parent, basestring):
+ return child == parent
+@@ -1170,7 +1170,7 @@ _SYMBOLS_BY_URI["Manifestation"] = Manifestation
+ # Load the ontology definitions
+ ontology_file = os.path.join(os.path.dirname(__file__), "_ontology.py")
+ try:
+- execfile(ontology_file)
++ exec(open(ontology_file).read())
+ except IOError:
+ raise ImportError("Unable to load Zeitgeist ontology. Did you run `make`?")
+
+@@ -1178,23 +1178,23 @@ except IOError:
+ # Bootstrap the symbol relations. We use a 2-pass strategy:
+ #
+ # 1) Make sure that all parents and children are registered on each symbol
+-for symbol in _SYMBOLS_BY_URI.itervalues():
++for symbol in _SYMBOLS_BY_URI.values():
+ for parent in symbol._parents:
+ try:
+ _SYMBOLS_BY_URI[parent]._children[symbol.uri] = None
+- except KeyError, e:
+- print "ERROR", e, parent, symbol.uri
++ except KeyError as e:
++ print ("ERROR", e, parent, symbol.uri)
+ pass
+ for child in symbol._children:
+ try:
+ _SYMBOLS_BY_URI[child]._parents.add(symbol.uri)
+ except KeyError:
+- print "ERROR", e, child, symbol.uri
++ print ("ERROR", e, child, symbol.uri)
+ pass
+
+ # 2) Resolve all child and parent URIs to their actual Symbol instances
+-for symbol in _SYMBOLS_BY_URI.itervalues():
+- for child_uri in symbol._children.iterkeys():
++for symbol in _SYMBOLS_BY_URI.values():
++ for child_uri in symbol._children.keys():
+ symbol._children[child_uri] = _SYMBOLS_BY_URI[child_uri]
+
+ parents = {}
+@@ -1204,8 +1204,8 @@ for symbol in _SYMBOLS_BY_URI.itervalues():
+
+
+ if __name__ == "__main__":
+- print "Success"
++ print ("Success")
+ end_symbols = time.time()
+- print >> sys.stderr, "Import time: %s" % (end_symbols - start_symbols)
++ print ("Import time: %s" % (end_symbols - start_symbols), sys.stderr)
+
+ # vim:noexpandtab:ts=4:sw=4