x11-terms/kitty: bump to 0.15.1 and add support for python 3.8
authorPablo <pord@tuta.io>
Tue, 7 Jan 2020 09:14:09 +0000 (10:14 +0100)
committerJoonas Niilola <juippis@gentoo.org>
Thu, 9 Jan 2020 06:00:59 +0000 (08:00 +0200)
Signed-off-by: Pablo Orduna <pabloorduna98@gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/14081
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
x11-terms/kitty/Manifest
x11-terms/kitty/files/kitty-0.15.1-flags.patch [new file with mode: 0644]
x11-terms/kitty/kitty-0.15.1.ebuild [new file with mode: 0644]

index be302aa445cbff61eec39ba0ba5185ef3fe415fc..f54d9c510e7e4feb92a639c53881dd606b979928 100644 (file)
@@ -1,2 +1,3 @@
 DIST kitty-0.14.6.tar.xz 2970008 BLAKE2B e4f64051aebcc5d5aa1956351acb5564815e65c7c8435cac3c7960c5096fbeb5f0e98e3bdf92e750e8d70d6b0124b081bbb5d38a589c3dc5cf74642c3eaf83c9 SHA512 889bfce732f2a36d338c9c41b28e0770d98c15530b56a9f037cef610593b50453f1bde60e89560472035fc250dec0431a9776de1449f77e4c6988aca157eea12
 DIST kitty-0.15.0.tar.xz 2978152 BLAKE2B 49f6e5051392c9ad0a91151ccc9f62dbc8ce0031680c66f4b08291c5b5cf43ccb1f096aecfcc69f7980997397d326d6b164f5f189fb89608ed9c8c22f313ebda SHA512 4e546fb9ad0cf34df8aa5ef3787224e8dd820fadb474faddc5f47b987bbc46fb62350a64bcacbdccd7e7cd287df22045ed742b89f613e402f033dc8bb73d8688
+DIST kitty-0.15.1.tar.xz 2974348 BLAKE2B 63f7f6f6083df34420733e33e00e8483f476c1f191942075160d14f87c4052e08d4c9e1d1872d41dd1af6c0c23f3fc444efb22124e3fe1611fe01be593bc64b5 SHA512 e32fe719b4fc7c45b324e4372e0dca3e482f81b245b8bf4eb2b643dccc8541a8d1f93b0f73d5777a7b51cd62a720468036bcb848797e0cba2dad71bba005f9e1
diff --git a/x11-terms/kitty/files/kitty-0.15.1-flags.patch b/x11-terms/kitty/files/kitty-0.15.1-flags.patch
new file mode 100644 (file)
index 0000000..cf09a4a
--- /dev/null
@@ -0,0 +1,49 @@
+Respect user CFLAGS.
+
+--- a/setup.py
++++ b/setup.py
+@@ -204,7 +204,7 @@
+     if ccver >= (5, 0):
+         df += ' -Og'
+         float_conversion = '-Wfloat-conversion'
+-    optimize = df if debug or sanitize else '-O3'
++    optimize = ''
+     sanitize_args = get_sanitize_args(cc, ccver) if sanitize else set()
+     cppflags = os.environ.get(
+         'OVERRIDE_CPPFLAGS', '-D{}DEBUG'.format('' if debug else 'N'),
+@@ -217,7 +217,7 @@
+     cflags = os.environ.get(
+         'OVERRIDE_CFLAGS', (
+             '-Wextra {} -Wno-missing-field-initializers -Wall -Wstrict-prototypes -std=c11'
+-            ' -pedantic-errors -Werror {} {} -fwrapv {} {} -pipe {} -fvisibility=hidden'
++            ' -pedantic-errors {} {} -fwrapv {} {} {} -fvisibility=hidden'
+         ).format(
+             float_conversion, std,
+             optimize,
+@@ -232,7 +232,7 @@
+     )
+     ldflags = os.environ.get(
+         'OVERRIDE_LDFLAGS',
+-        '-Wall ' + ' '.join(sanitize_args) + ('' if debug else ' -O3')
++        '-Wall ' + ' '.join(sanitize_args)
+     )
+     ldflags = shlex.split(ldflags)
+     ldflags.append('-shared')
+@@ -614,7 +614,7 @@
+ def build_launcher(args, launcher_dir='.', bundle_type='source'):
+-    cflags = '-Wall -Werror -fpie'.split()
++    cflags = '-Wall -fpie'.split()
+     cppflags = []
+     libs = []
+     if args.profile or args.sanitize:
+@@ -626,8 +626,6 @@
+             cflags.append('-g')
+         if args.profile:
+             libs.append('-lprofiler')
+-    else:
+-        cflags.append('-O3')
+     if bundle_type.endswith('-freeze'):
+         cppflags.append('-DFOR_BUNDLE')
+         cppflags.append('-DPYVER="{}"'.format(sysconfig.get_python_version()))
diff --git a/x11-terms/kitty/kitty-0.15.1.ebuild b/x11-terms/kitty/kitty-0.15.1.ebuild
new file mode 100644 (file)
index 0000000..13c55df
--- /dev/null
@@ -0,0 +1,101 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8} )
+
+inherit python-single-r1 toolchain-funcs xdg
+
+if [[ ${PV} == "9999" ]] ; then
+       EGIT_REPO_URI="https://github.com/kovidgoyal/kitty.git"
+       inherit git-r3
+else
+       SRC_URI="https://github.com/kovidgoyal/kitty/releases/download/v${PV}/${P}.tar.xz"
+       KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="A modern, hackable, featureful, OpenGL-based terminal emulator"
+HOMEPAGE="https://github.com/kovidgoyal/kitty"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="debug imagemagick wayland"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+       ${PYTHON_DEPS}
+       media-libs/fontconfig
+       media-libs/freetype:2
+       >=media-libs/harfbuzz-1.5.0:=
+       media-libs/libcanberra
+       media-libs/libpng:0=
+       x11-libs/libxcb[xkb]
+       x11-libs/libXcursor
+       x11-libs/libXi
+       x11-libs/libXinerama
+       x11-libs/libxkbcommon[X]
+       x11-libs/libXrandr
+       sys-apps/dbus
+       sys-libs/zlib
+       virtual/imagemagick-tools
+       wayland? (
+               dev-libs/wayland
+               >=dev-libs/wayland-protocols-1.17
+       )
+"
+
+DEPEND="${RDEPEND}
+       media-libs/mesa[X(+)]
+       sys-libs/ncurses
+"
+
+BDEPEND="virtual/pkgconfig"
+
+[[ ${PV} == *9999 ]] && BDEPEND+=" >=dev-python/sphinx-1.7"
+
+PATCHES=(
+       "${FILESDIR}"/${P}-flags.patch
+       "${FILESDIR}"/${PN}-0.14.4-svg-icon.patch
+)
+
+src_prepare() {
+       default
+
+       # disable wayland as required
+       if ! use wayland; then
+               sed -i "/'x11 wayland'/s/ wayland//" setup.py || die
+       fi
+
+       # respect doc dir
+       sed -i "/htmldir =/s/appname/'${PF}'/" setup.py || die
+
+       tc-export CC
+}
+
+src_compile() {
+       "${EPYTHON}" setup.py \
+               --verbose $(usex debug --debug "") \
+               --libdir-name $(get_libdir) \
+               linux-package || die "Failed to compile kitty."
+}
+
+src_test() {
+       export KITTY_CONFIG_DIRECTORY=${T}
+       "${EPYTHON}" test.py || die
+}
+
+src_install() {
+       insinto /usr
+       doins -r linux-package/*
+       dobin linux-package/bin/kitty
+       python_fix_shebang "${ED}"
+}
+
+pkg_postinst() {
+       xdg_icon_cache_update
+}
+
+pkg_postrm() {
+       xdg_icon_cache_update
+}