diff options
-rw-r--r-- | community/meld/APKBUILD | 27 | ||||
-rw-r--r-- | community/meld/python-3.8.patch | 67 |
2 files changed, 19 insertions, 75 deletions
diff --git a/community/meld/APKBUILD b/community/meld/APKBUILD index 66ea8a3545..0a373f4dfe 100644 --- a/community/meld/APKBUILD +++ b/community/meld/APKBUILD @@ -1,27 +1,38 @@ # Contributor: August Klein <amatcoder@gmail.com> +# Contributor: Rasmus Thomsen <oss@cogitri.dev> # Maintainer: August Klein <amatcoder@gmail.com> pkgname=meld -pkgver=3.20.1 -pkgrel=3 +pkgver=3.20.2 +pkgrel=0 pkgdesc="A visual diff and merge tool" url="https://meldmerge.org" -arch="all !s390x" # missing gtksourceview +arch="noarch !s390x" # missing gtksourceview license="GPL-2.0-or-later" depends="dconf gtksourceview gsettings-desktop-schemas py3-gobject3 py3-cairo" makedepends="intltool itstool libxml2-utils" +checkdepends="py3-pytest xvfb-run gtk-update-icon-cache" subpackages="$pkgname-lang $pkgname-doc" -source="https://download.gnome.org/sources/meld/${pkgver%.*}/meld-$pkgver.tar.xz - python-3.8.patch - " +source="https://download.gnome.org/sources/meld/${pkgver%.*}/meld-$pkgver.tar.xz" + +prepare() { + default_prepare + + # Needs meld icons, so we'd need to mess around with gtk discovering the icons + # in place and generating an icon cache etc. so let's disable it for now. + rm test/test_gutterrendererchunk.py +} build() { python3 setup.py build } +check() { + PYTHONPATH="$PWD/build/lib" xvfb-run pytest-3 +} + package() { python3 setup.py install --prefix=/usr --root="$pkgdir" } -sha512sums="cd21f298dc1da6eb08261599b9270989c837e0923d5cf5cfdad227dd7f256ac5f53ac903939ebef90ea6cd684c7355ce9482648057284f4ce44f1c7101959c1f meld-3.20.1.tar.xz -ac587c9b7f8d3d227439fb679acf287e91215b0acb29d703de8da2768773c668fdc17c183d01d3b0a56db842e2a8f4509b2065a0a9ee4a489fa233c51cf62d3e python-3.8.patch" +sha512sums="9c9074cb879e3574eb9a1025eb1212771419ab0d8e92bf8a99f38e70ca583ff5c8cbeaccb87b414e6ff73a61afa08e10742991d574b810cc90e8c4a5ac82ddaa meld-3.20.2.tar.xz" diff --git a/community/meld/python-3.8.patch b/community/meld/python-3.8.patch deleted file mode 100644 index 48fa0545d2..0000000000 --- a/community/meld/python-3.8.patch +++ /dev/null @@ -1,67 +0,0 @@ -From 9cb590f9804a89d8914d0d7d6c89c336f6d86d86 Mon Sep 17 00:00:00 2001 -From: Kai Willadsen <kai.willadsen@gmail.com> -Date: Mon, 6 May 2019 08:15:23 +1000 -Subject: [PATCH] Update build helpers for Python 3.8 compatibility (#322) - -The `linux_distribution` helper for the platform module has been removed -in Python 3.8, so we need an additional helper to check for the Debian- -style packaging layout. - -Really this should be an `install_requires`, but moving our build -helpers to `setuptools` is a not-insignificant risk that I'd rather not -take when we're looking at moving to Meson. ---- - README.md | 6 ++++++ - meld/build_helpers.py | 29 ++++++++++++++++++++++++----- - 2 files changed, 30 insertions(+), 5 deletions(-) - -diff --git a/meld/build_helpers.py b/meld/build_helpers.py -index 5977b3cd..f9fb302b 100644 ---- a/meld/build_helpers.py -+++ b/meld/build_helpers.py -@@ -31,6 +31,15 @@ import platform - import sys - from distutils.log import info - -+try: -+ import distro -+except ImportError: -+ python_version = tuple(int(x) for x in platform.python_version_tuple()) -+ if python_version >= (3, 8): -+ print( -+ 'Missing build requirement "distro" Python module; ' -+ 'install paths may be incorrect', file=sys.stderr) -+ - - def has_help(self): - return "build_help" in self.distribution.cmdclass and os.name != 'nt' -@@ -404,11 +413,21 @@ class install(distutils.command.install.install): - - def finalize_options(self): - special_cases = ('debian', 'ubuntu', 'linuxmint') -- if (platform.system() == 'Linux' and -- platform.linux_distribution()[0].lower() in special_cases): -- # Maintain an explicit install-layout, but use deb by default -- specified_layout = getattr(self, 'install_layout', None) -- self.install_layout = specified_layout or 'deb' -+ if platform.system() == 'Linux': -+ # linux_distribution has been removed in Python 3.8; we require -+ # the third-party distro package for future handling. -+ try: -+ distribution = platform.linux_distribution()[0].lower() -+ except AttributeError: -+ try: -+ distribution = distro.id() -+ except NameError: -+ distribution = 'unknown' -+ -+ if distribution in special_cases: -+ # Maintain an explicit install-layout, but use deb by default -+ specified_layout = getattr(self, 'install_layout', None) -+ self.install_layout = specified_layout or 'deb' - - distutils.command.install.install.finalize_options(self) - --- -2.22.0 - |