commit:     c6680c82b3aa9965ad37228ada43198f8cecb3dd
Author:     Pablo <pord <AT> tuta <DOT> io>
AuthorDate: Fri Apr 30 22:03:47 2021 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Mon May 10 08:06:32 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c6680c82

x11-terms/kitty: bump to 0.20.1

Signed-off-by: Pablo Orduna <pabloorduna98 <AT> gmail.com>
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 x11-terms/kitty/Manifest                           |   1 +
 x11-terms/kitty/files/kitty-0.20.1-flags.patch     |  49 +++++++++
 .../kitty/files/kitty-0.20.1-remove-terminfo.patch |  16 +++
 x11-terms/kitty/files/kitty-0.20.1-tests.patch     |  11 +++
 x11-terms/kitty/kitty-0.20.1.ebuild                | 110 +++++++++++++++++++++
 5 files changed, 187 insertions(+)

diff --git a/x11-terms/kitty/Manifest b/x11-terms/kitty/Manifest
index 5a886b4a8f4..68abc25bf93 100644
--- a/x11-terms/kitty/Manifest
+++ b/x11-terms/kitty/Manifest
@@ -1 +1,2 @@
 DIST kitty-0.19.3.tar.xz 3269628 BLAKE2B 
b3b673f8ad06baf770b03bcee87b2f405e1ff09d0fa5c6a232fd8df651351a428c8fbd9e2d0dc90ed44a0d6632192bea83650388ee73ebc3b523f51e51168006
 SHA512 
d1eea7f909c9492542650a83a149fd279c44380cf10387759f10caad57cd4dbabeac1ce84e8142bfa47266ec2562dfa3766ce08e2aee4d8e0ebacea165f101e4
+DIST kitty-0.20.1.tar.xz 3449932 BLAKE2B 
aed9a250fbc7005cd67fd22bfc33de845bea7e39a5561e6957b744f03a5438945f9739ca7066a93889144a5d0289185f337ef4d487c754cba37f242030f1c46a
 SHA512 
19dfa66eb2a2115877b25fbff0ba7a81071bff00c732236f20342aeb619cca88ae4a4e8ce4e73908ac7d7d12fca5232a76e0167754f2e658af02e442cf5ba0cd

diff --git a/x11-terms/kitty/files/kitty-0.20.1-flags.patch 
b/x11-terms/kitty/files/kitty-0.20.1-flags.patch
new file mode 100644
index 00000000000..27a44f56794
--- /dev/null
+++ b/x11-terms/kitty/files/kitty-0.20.1-flags.patch
@@ -0,0 +1,49 @@
+diff --git a/setup.py b/setup.py
+index ce5309ee..9cb59461 100755
+--- a/setup.py
++++ b/setup.py
+@@ -278,7 +278,7 @@ def init_env(
+         df += ' -Og'
+         float_conversion = '-Wfloat-conversion'
+     fortify_source = '' if sanitize and is_macos else '-D_FORTIFY_SOURCE=2'
+-    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'),
+@@ -289,7 +289,7 @@ def init_env(
+     cflags_ = os.environ.get(
+         'OVERRIDE_CFLAGS', (
+             '-Wextra {} -Wno-missing-field-initializers -Wall 
-Wstrict-prototypes {}'
+-            ' -pedantic-errors -Werror {} {} -fwrapv {} {} -pipe {} 
-fvisibility=hidden {}'
++            ' -pedantic-errors {} {} -fwrapv {} {} {} -fvisibility=hidden {}'
+         ).format(
+             float_conversion,
+             '' if is_openbsd else '-std=c11',
+@@ -306,7 +306,7 @@ def init_env(
+     )
+     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')
+@@ -764,7 +764,7 @@ def safe_makedirs(path: str) -> None:
+ 
+ 
+ def build_launcher(args: Options, launcher_dir: str = '.', bundle_type: str = 
'source') -> None:
+-    cflags = '-Wall -Werror -fpie'.split()
++    cflags = '-Wall -fpie'.split()
+     cppflags = []
+     libs: List[str] = []
+     if args.profile or args.sanitize:
+@@ -776,8 +776,6 @@ def build_launcher(args: Options, launcher_dir: str = '.', 
bundle_type: str = 's
+             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/files/kitty-0.20.1-remove-terminfo.patch 
b/x11-terms/kitty/files/kitty-0.20.1-remove-terminfo.patch
new file mode 100644
index 00000000000..aeb40e60118
--- /dev/null
+++ b/x11-terms/kitty/files/kitty-0.20.1-remove-terminfo.patch
@@ -0,0 +1,16 @@
+diff --git a/setup.py b/setup.py
+index ce5309ee..02f38c61 100755
+--- a/setup.py
++++ b/setup.py
+@@ -1028,11 +1028,6 @@ def package(args: Options, bundle_type: str) -> None:
+     safe_makedirs(launcher_dir)
+     build_launcher(args, launcher_dir, bundle_type)
+     os.makedirs(os.path.join(libdir, 'logo'))
+-    build_terminfo = runpy.run_path('build-terminfo', 
run_name='import_build')  # type: ignore
+-    for x in (libdir, os.path.join(ddir, 'share')):
+-        odir = os.path.join(x, 'terminfo')
+-        safe_makedirs(odir)
+-        build_terminfo['compile_terminfo'](odir)
+     shutil.copy2('__main__.py', libdir)
+     shutil.copy2('logo/kitty-128.png', os.path.join(libdir, 'logo'))
+     shutil.copy2('logo/kitty.png', os.path.join(libdir, 'logo'))

diff --git a/x11-terms/kitty/files/kitty-0.20.1-tests.patch 
b/x11-terms/kitty/files/kitty-0.20.1-tests.patch
new file mode 100644
index 00000000000..210898b888d
--- /dev/null
+++ b/x11-terms/kitty/files/kitty-0.20.1-tests.patch
@@ -0,0 +1,11 @@
+--- a/kitty/constants.py
++++ b/kitty/constants.py
+@@ -64,7 +64,7 @@
+ def kitty_exe() -> str:
+     rpath = sys._xoptions.get('bundle_exe_dir')
+     if not rpath:
+-        items = os.environ.get('PATH', '').split(os.pathsep) + 
[os.path.join(kitty_base_dir, 'kitty', 'launcher')]
++        items = os.environ.get('PATH', '').split(os.pathsep) + 
[os.path.join(kitty_base_dir, '../linux-package/bin')]
+         seen: Set[str] = set()
+         for candidate in filter(None, items):
+             if candidate not in seen:

diff --git a/x11-terms/kitty/kitty-0.20.1.ebuild 
b/x11-terms/kitty/kitty-0.20.1.ebuild
new file mode 100644
index 00000000000..242d24ee070
--- /dev/null
+++ b/x11-terms/kitty/kitty-0.20.1.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8} )
+
+inherit optfeature 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 wayland"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+       ${PYTHON_DEPS}
+       media-libs/fontconfig
+       media-libs/freetype:2
+       >=media-libs/harfbuzz-1.5.0:=
+       media-libs/lcms
+       media-libs/libcanberra
+       media-libs/libpng:0=
+       sys-apps/dbus
+       sys-libs/zlib
+       x11-libs/libxcb[xkb]
+       x11-libs/libXcursor
+       x11-libs/libXi
+       x11-libs/libXinerama
+       x11-libs/libxkbcommon[X]
+       x11-libs/libXrandr
+       x11-terms/kitty-terminfo
+       wayland? (
+               dev-libs/wayland
+               >=dev-libs/wayland-protocols-1.17
+       )
+       $(python_gen_cond_dep 
'dev-python/importlib_resources[${PYTHON_USEDEP}]' python3_6)
+"
+
+DEPEND="${RDEPEND}
+       media-libs/mesa[X]
+       sys-libs/ncurses
+"
+
+BDEPEND="virtual/pkgconfig"
+
+[[ ${PV} == *9999 ]] && BDEPEND+=" >=dev-python/sphinx-1.7"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-0.20.1-flags.patch
+       "${FILESDIR}"/${PN}-0.14.4-svg-icon.patch
+       "${FILESDIR}"/${PN}-0.20.1-remove-terminfo.patch
+       "${FILESDIR}"/${PN}-0.20.1-tests.patch
+)
+
+src_prepare() {
+       default
+
+       # disable wayland as required
+       if ! use wayland; then
+               sed -i "/'x11 wayland'/s/ wayland//" setup.py || die
+               # also disable wayland tests
+               sed -i "/if not self.is_ci/d" kitty_tests/check_build.py || die
+               sed -i "/linux_backends.append('wayland')/d" 
kitty_tests/check_build.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) \
+               --update-check-interval=0 \
+               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
+       optfeature "Displaying images in the terminal" virtual/imagemagick-tools
+}
+
+pkg_postrm() {
+       xdg_icon_cache_update
+}

Reply via email to