--- /dev/null
+--- a/setup.py 2020-03-12 00:28:46.725956882 +0100
++++ b/setup.py 2020-03-12 00:38:55.557945979 +0100
+@@ -876,6 +876,14 @@
+ create_macos_bundle_gunk(ddir)
+ # }}}
+
++def terminfo(args):
++ ddir = args.prefix
++ libdir = os.path.join(ddir, args.libdir_name.strip('/'), 'kitty')
++ build_terminfo = runpy.run_path('build-terminfo', run_name='import_build')
++ for x in (libdir, os.path.join(ddir, 'share')):
++ odir = os.path.join(x, 'terminfo')
++ safe_makedirs(odir)
++ build_terminfo['compile_terminfo'](odir)
+
+ def clean():
+
+@@ -889,7 +897,7 @@
+
+ safe_remove(
+ 'build', 'compile_commands.json', 'link_commands.json',
+- 'linux-package', 'kitty.app', 'asan-launcher',
++ 'linux-package', 'linux-terminfo', 'kitty.app', 'asan-launcher',
+ 'kitty-profile', 'kitty/launcher')
+ exclude = ('.git',)
+ for root, dirs, files in os.walk('.', topdown=True):
+@@ -910,7 +918,7 @@
+ 'action',
+ nargs='?',
+ default=Options.action,
+- choices='build test linux-package kitty.app linux-freeze macos-freeze clean'.split(),
++ choices='build test linux-package linux-terminfo kitty.app linux-freeze macos-freeze clean'.split(),
+ help='Action to perform (default is build)'
+ )
+ p.add_argument(
+@@ -1007,6 +1015,8 @@
+ elif args.action == 'linux-package':
+ build(args, native_optimizations=False)
+ package(args, bundle_type='linux-package')
++ elif args.action == 'linux-terminfo':
++ terminfo(args)
+ elif args.action == 'linux-freeze':
+ build(args, native_optimizations=False)
+ package(args, bundle_type='linux-freeze')
--- /dev/null
+# 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-any-r1 toolchain-funcs xdg
+
+DESCRIPTION="Terminfo for kitty, an OpenGL-based terminal emulator"
+HOMEPAGE="https://github.com/kovidgoyal/kitty"
+SRC_URI="https://github.com/kovidgoyal/kitty/releases/download/v${PV}/kitty-${PV}.tar.xz"
+S="${WORKDIR}/kitty-${PV}"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug"
+
+DEPEND="${PYTHON_DEPS}"
+
+PATCHES=(
+ "${FILESDIR}"/kitty-terminfo-setup-0.17.2.patch
+)
+
+# kitty-terminfo is a split package from kitty that only installs the terminfo
+# file. As tests are designed to be run with the whole package compiled they
+# would fail in this case.
+RESTRICT="test"
+
+src_compile() {
+ "${EPYTHON}" setup.py \
+ --verbose $(usex debug --debug "") \
+ --libdir-name $(get_libdir) \
+ linux-terminfo || die "Failed to compile kitty."
+}
+
+src_install() {
+ insinto /usr
+ doins -r linux-package/*
+}