Diff below changes our port of git-cola a bit:
- Switch from py-qt4 to py-qt5
- Switch to python3
- Drop dependency on textproc/xxdiff.

Rationale for the latter is that git-cola per default uses git.tool from
.gitconfig. A user can easily pkg_add xxdiff, or one of its
alternatives.

Testing:
- 'make test' passes all tests
- run tested on amd64

Comments/OK?


diff --git Makefile Makefile
index ae56f932813..461839de26e 100644
--- Makefile
+++ Makefile
@@ -3,7 +3,8 @@
 COMMENT =      python powered git gui
 
 MODPY_EGG_VERSION=     3.6
-DISTNAME =     ${GH_PROJECT}-${MODPY_EGG_VERSION}
+REVISION =             0
+DISTNAME =             ${GH_PROJECT}-${MODPY_EGG_VERSION}
 
 GH_ACCOUNT =   git-cola
 GH_PROJECT =   git-cola
@@ -16,26 +17,25 @@ HOMEPAGE =  https://git-cola.github.io/
 MAINTAINER =   Bjorn Ketelaars <b...@openbsd.org>
 
 # GPLv2 only
-PERMIT_PACKAGE=        Yes
+PERMIT_PACKAGE =       Yes
 
 MODULES =      lang/python
 MODPY_PYTEST = Yes
+MODPY_VERSION =        ${MODPY_DEFAULT_VERSION_3}
 
 BUILD_DEPENDS =        devel/gettext,-tools \
                devel/git \
                devel/git,-x11 \
-               textproc/xxdiff \
-               x11/py-qt4 \
-               x11/py-qtpy
+               x11/py-qt5${MODPY_FLAVOR} \
+               x11/py-qtpy${MODPY_FLAVOR}
 
 RUN_DEPENDS =  devel/desktop-file-utils \
                devel/git \
                devel/git,-x11 \
-               textproc/xxdiff \
-               x11/py-qt4 \
-               x11/py-qtpy
+               x11/py-qt5${MODPY_FLAVOR} \
+               x11/py-qtpy${MODPY_FLAVOR}
 
-TEST_DEPENDS = devel/py-mock
+TEST_DEPENDS = devel/py-mock${MODPY_FLAVOR}
 
 USE_GMAKE =    Yes
 
diff --git pkg/PLIST pkg/PLIST
index 22432fe9279..851d6eeae89 100644
--- pkg/PLIST
+++ pkg/PLIST
@@ -136,179 +136,182 @@ share/git-cola/icons/zoom-out.svg
 share/git-cola/lib/
 share/git-cola/lib/cola/
 share/git-cola/lib/cola/__init__.py
-share/git-cola/lib/cola/__init__.pyc
+${MODPY_COMMENT}share/git-cola/lib/cola/${MODPY_PYCACHE}/
+share/git-cola/lib/cola/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}_version.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}actions.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}app.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}cmd.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}cmds.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}compat.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}core.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}dag.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}decorators.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}diffparse.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}difftool.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}fsmonitor.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}git.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}gitcfg.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}gitcmds.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}gravatar.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}guicmds.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}hidpi.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}hotkeys.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}i18n.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}icons.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}inotify.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}interaction.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}main.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}observable.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}qtcompat.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}qtutils.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}resources.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}settings.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}spellcheck.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}textwrap.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}themes.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}utils.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/${MODPY_PYCACHE}version.${MODPY_PYC_MAGIC_TAG}pyc
 share/git-cola/lib/cola/_version.py
-share/git-cola/lib/cola/_version.pyc
 share/git-cola/lib/cola/actions.py
-share/git-cola/lib/cola/actions.pyc
 share/git-cola/lib/cola/app.py
-share/git-cola/lib/cola/app.pyc
 share/git-cola/lib/cola/cmd.py
-share/git-cola/lib/cola/cmd.pyc
 share/git-cola/lib/cola/cmds.py
-share/git-cola/lib/cola/cmds.pyc
 share/git-cola/lib/cola/compat.py
-share/git-cola/lib/cola/compat.pyc
 share/git-cola/lib/cola/core.py
-share/git-cola/lib/cola/core.pyc
 share/git-cola/lib/cola/dag.py
-share/git-cola/lib/cola/dag.pyc
 share/git-cola/lib/cola/decorators.py
-share/git-cola/lib/cola/decorators.pyc
 share/git-cola/lib/cola/diffparse.py
-share/git-cola/lib/cola/diffparse.pyc
 share/git-cola/lib/cola/difftool.py
-share/git-cola/lib/cola/difftool.pyc
 share/git-cola/lib/cola/fsmonitor.py
-share/git-cola/lib/cola/fsmonitor.pyc
 share/git-cola/lib/cola/git.py
-share/git-cola/lib/cola/git.pyc
 share/git-cola/lib/cola/gitcfg.py
-share/git-cola/lib/cola/gitcfg.pyc
 share/git-cola/lib/cola/gitcmds.py
-share/git-cola/lib/cola/gitcmds.pyc
 share/git-cola/lib/cola/gravatar.py
-share/git-cola/lib/cola/gravatar.pyc
 share/git-cola/lib/cola/guicmds.py
-share/git-cola/lib/cola/guicmds.pyc
 share/git-cola/lib/cola/hidpi.py
-share/git-cola/lib/cola/hidpi.pyc
 share/git-cola/lib/cola/hotkeys.py
-share/git-cola/lib/cola/hotkeys.pyc
 share/git-cola/lib/cola/i18n.py
-share/git-cola/lib/cola/i18n.pyc
 share/git-cola/lib/cola/icons.py
-share/git-cola/lib/cola/icons.pyc
 share/git-cola/lib/cola/inotify.py
-share/git-cola/lib/cola/inotify.pyc
 share/git-cola/lib/cola/interaction.py
-share/git-cola/lib/cola/interaction.pyc
 share/git-cola/lib/cola/main.py
-share/git-cola/lib/cola/main.pyc
 share/git-cola/lib/cola/models/
 share/git-cola/lib/cola/models/__init__.py
-share/git-cola/lib/cola/models/__init__.pyc
+${MODPY_COMMENT}share/git-cola/lib/cola/models/${MODPY_PYCACHE}/
+share/git-cola/lib/cola/models/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/models/${MODPY_PYCACHE}browse.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/models/${MODPY_PYCACHE}dag.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/models/${MODPY_PYCACHE}main.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/models/${MODPY_PYCACHE}prefs.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/models/${MODPY_PYCACHE}selection.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/models/${MODPY_PYCACHE}stash.${MODPY_PYC_MAGIC_TAG}pyc
 share/git-cola/lib/cola/models/browse.py
-share/git-cola/lib/cola/models/browse.pyc
 share/git-cola/lib/cola/models/dag.py
-share/git-cola/lib/cola/models/dag.pyc
 share/git-cola/lib/cola/models/main.py
-share/git-cola/lib/cola/models/main.pyc
 share/git-cola/lib/cola/models/prefs.py
-share/git-cola/lib/cola/models/prefs.pyc
 share/git-cola/lib/cola/models/selection.py
-share/git-cola/lib/cola/models/selection.pyc
 share/git-cola/lib/cola/models/stash.py
-share/git-cola/lib/cola/models/stash.pyc
 share/git-cola/lib/cola/observable.py
-share/git-cola/lib/cola/observable.pyc
 share/git-cola/lib/cola/qtcompat.py
-share/git-cola/lib/cola/qtcompat.pyc
 share/git-cola/lib/cola/qtutils.py
-share/git-cola/lib/cola/qtutils.pyc
 share/git-cola/lib/cola/resources.py
-share/git-cola/lib/cola/resources.pyc
 share/git-cola/lib/cola/settings.py
-share/git-cola/lib/cola/settings.pyc
 share/git-cola/lib/cola/spellcheck.py
-share/git-cola/lib/cola/spellcheck.pyc
 share/git-cola/lib/cola/textwrap.py
-share/git-cola/lib/cola/textwrap.pyc
 share/git-cola/lib/cola/themes.py
-share/git-cola/lib/cola/themes.pyc
 share/git-cola/lib/cola/utils.py
-share/git-cola/lib/cola/utils.pyc
 share/git-cola/lib/cola/version.py
-share/git-cola/lib/cola/version.pyc
 share/git-cola/lib/cola/widgets/
 share/git-cola/lib/cola/widgets/__init__.py
-share/git-cola/lib/cola/widgets/__init__.pyc
+${MODPY_COMMENT}share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}/
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}about.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}action.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}archive.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}bookmarks.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}branch.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}browse.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}cfgactions.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}clone.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}commitmsg.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}common.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}compare.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}completion.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}createbranch.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}createtag.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}dag.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}defs.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}diff.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}editremotes.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}filelist.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}filetree.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}finder.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}gitignore.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}grep.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}highlighter.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}imageview.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}log.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}main.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}merge.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}patch.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}prefs.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}recent.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}remote.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}search.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}selectcommits.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}spellcheck.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}standard.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}startup.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}stash.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}status.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}submodules.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}text.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}toolbar.${MODPY_PYC_MAGIC_TAG}pyc
+share/git-cola/lib/cola/widgets/${MODPY_PYCACHE}toolbarcmds.${MODPY_PYC_MAGIC_TAG}pyc
 share/git-cola/lib/cola/widgets/about.py
-share/git-cola/lib/cola/widgets/about.pyc
 share/git-cola/lib/cola/widgets/action.py
-share/git-cola/lib/cola/widgets/action.pyc
 share/git-cola/lib/cola/widgets/archive.py
-share/git-cola/lib/cola/widgets/archive.pyc
 share/git-cola/lib/cola/widgets/bookmarks.py
-share/git-cola/lib/cola/widgets/bookmarks.pyc
 share/git-cola/lib/cola/widgets/branch.py
-share/git-cola/lib/cola/widgets/branch.pyc
 share/git-cola/lib/cola/widgets/browse.py
-share/git-cola/lib/cola/widgets/browse.pyc
 share/git-cola/lib/cola/widgets/cfgactions.py
-share/git-cola/lib/cola/widgets/cfgactions.pyc
 share/git-cola/lib/cola/widgets/clone.py
-share/git-cola/lib/cola/widgets/clone.pyc
 share/git-cola/lib/cola/widgets/commitmsg.py
-share/git-cola/lib/cola/widgets/commitmsg.pyc
 share/git-cola/lib/cola/widgets/common.py
-share/git-cola/lib/cola/widgets/common.pyc
 share/git-cola/lib/cola/widgets/compare.py
-share/git-cola/lib/cola/widgets/compare.pyc
 share/git-cola/lib/cola/widgets/completion.py
-share/git-cola/lib/cola/widgets/completion.pyc
 share/git-cola/lib/cola/widgets/createbranch.py
-share/git-cola/lib/cola/widgets/createbranch.pyc
 share/git-cola/lib/cola/widgets/createtag.py
-share/git-cola/lib/cola/widgets/createtag.pyc
 share/git-cola/lib/cola/widgets/dag.py
-share/git-cola/lib/cola/widgets/dag.pyc
 share/git-cola/lib/cola/widgets/defs.py
-share/git-cola/lib/cola/widgets/defs.pyc
 share/git-cola/lib/cola/widgets/diff.py
-share/git-cola/lib/cola/widgets/diff.pyc
 share/git-cola/lib/cola/widgets/editremotes.py
-share/git-cola/lib/cola/widgets/editremotes.pyc
 share/git-cola/lib/cola/widgets/filelist.py
-share/git-cola/lib/cola/widgets/filelist.pyc
 share/git-cola/lib/cola/widgets/filetree.py
-share/git-cola/lib/cola/widgets/filetree.pyc
 share/git-cola/lib/cola/widgets/finder.py
-share/git-cola/lib/cola/widgets/finder.pyc
 share/git-cola/lib/cola/widgets/gitignore.py
-share/git-cola/lib/cola/widgets/gitignore.pyc
 share/git-cola/lib/cola/widgets/grep.py
-share/git-cola/lib/cola/widgets/grep.pyc
 share/git-cola/lib/cola/widgets/highlighter.py
-share/git-cola/lib/cola/widgets/highlighter.pyc
 share/git-cola/lib/cola/widgets/imageview.py
-share/git-cola/lib/cola/widgets/imageview.pyc
 share/git-cola/lib/cola/widgets/log.py
-share/git-cola/lib/cola/widgets/log.pyc
 share/git-cola/lib/cola/widgets/main.py
-share/git-cola/lib/cola/widgets/main.pyc
 share/git-cola/lib/cola/widgets/merge.py
-share/git-cola/lib/cola/widgets/merge.pyc
 share/git-cola/lib/cola/widgets/patch.py
-share/git-cola/lib/cola/widgets/patch.pyc
 share/git-cola/lib/cola/widgets/prefs.py
-share/git-cola/lib/cola/widgets/prefs.pyc
 share/git-cola/lib/cola/widgets/recent.py
-share/git-cola/lib/cola/widgets/recent.pyc
 share/git-cola/lib/cola/widgets/remote.py
-share/git-cola/lib/cola/widgets/remote.pyc
 share/git-cola/lib/cola/widgets/search.py
-share/git-cola/lib/cola/widgets/search.pyc
 share/git-cola/lib/cola/widgets/selectcommits.py
-share/git-cola/lib/cola/widgets/selectcommits.pyc
 share/git-cola/lib/cola/widgets/spellcheck.py
-share/git-cola/lib/cola/widgets/spellcheck.pyc
 share/git-cola/lib/cola/widgets/standard.py
-share/git-cola/lib/cola/widgets/standard.pyc
 share/git-cola/lib/cola/widgets/startup.py
-share/git-cola/lib/cola/widgets/startup.pyc
 share/git-cola/lib/cola/widgets/stash.py
-share/git-cola/lib/cola/widgets/stash.pyc
 share/git-cola/lib/cola/widgets/status.py
-share/git-cola/lib/cola/widgets/status.pyc
 share/git-cola/lib/cola/widgets/submodules.py
-share/git-cola/lib/cola/widgets/submodules.pyc
 share/git-cola/lib/cola/widgets/text.py
-share/git-cola/lib/cola/widgets/text.pyc
 share/git-cola/lib/cola/widgets/toolbar.py
-share/git-cola/lib/cola/widgets/toolbar.pyc
 share/git-cola/lib/cola/widgets/toolbarcmds.py
-share/git-cola/lib/cola/widgets/toolbarcmds.pyc
 share/locale/cs/LC_MESSAGES/git-cola.mo
 share/locale/de/LC_MESSAGES/git-cola.mo
 share/locale/es/LC_MESSAGES/git-cola.mo

Reply via email to