update to kitty 0.26.4

changelog: https://sw.kovidgoyal.net/kitty/changelog/

This update disables the encrypted remote control functionality which
would require openssl 3.0; as discussed with a few.
This commit is contained in:
thfr 2022-11-08 15:59:51 +00:00
parent 0c8557e3fe
commit c4042bd0e5
9 changed files with 226 additions and 13 deletions

View File

@ -3,7 +3,7 @@ ONLY_FOR_ARCHS = aarch64 amd64 i386
COMMENT = fast, feature full, GPU-based terminal emulator
MODPY_EGG_VERSION = 0.24.4
MODPY_EGG_VERSION = 0.26.4
DISTNAME = kitty-${MODPY_EGG_VERSION}
CATEGORIES = x11
HOMEPAGE = https://sw.kovidgoyal.net/kitty/
@ -12,7 +12,7 @@ MAINTAINER = Thomas Frohwein <thfr@openbsd.org>
# GPLv3+
PERMIT_PACKAGE = Yes
# libcanberra is dlopen(3)'d in desktop.c
# canberra, fontconfig, freetype are loaded dynamically
WANTLIB += GL X11 X11-xcb Xcursor Xinerama Xrandr c canberra dbus-1
WANTLIB += fontconfig freetype harfbuzz intl lcms2 m png pthread rsync
WANTLIB += util xcb xkbcommon xkbcommon-x11 z ${MODPY_WANTLIB}
@ -52,6 +52,10 @@ TEST_ENV = CI=true \
# needed for 'make test'
USE_GMAKE = Yes
# disable crypto for encrypted communication; depends on OpenSSL3; not worth it
post-extract:
rm ${WRKSRC}/kitty/crypto.c
pre-test:
mkdir -p ${WRKDIR}/tmp/cache

View File

@ -1,2 +1,2 @@
SHA256 (kitty-0.24.4.tar.xz) = 2M0LSWe7YeKjQntXy59F8niBP7a5hvl7NwyMUKoFjRg=
SIZE (kitty-0.24.4.tar.xz) = 4613232
SHA256 (kitty-0.26.4.tar.xz) = wJWRrHyQjmoFSfdcwGHGMY9GJh+fXT83dRIAY8OkO7c=
SIZE (kitty-0.26.4.tar.xz) = 4749148

View File

@ -0,0 +1,25 @@
disable crypto/remote control functions
Index: kitty/boss.py
--- kitty/boss.py.orig
+++ kitty/boss.py
@@ -35,7 +35,7 @@ from .fast_data_types import (
CLOSE_BEING_CONFIRMED, GLFW_MOD_ALT, GLFW_MOD_CONTROL, GLFW_MOD_SHIFT,
GLFW_MOD_SUPER, GLFW_MOUSE_BUTTON_LEFT, GLFW_PRESS, GLFW_PRIMARY_SELECTION,
IMPERATIVE_CLOSE_REQUESTED, NO_CLOSE_REQUESTED, ChildMonitor, Color,
- EllipticCurveKey, KeyEvent, SingleKey, add_timer, apply_options_update,
+ KeyEvent, SingleKey, add_timer, apply_options_update,
background_opacity_of, change_background_opacity, change_os_window_state,
cocoa_set_menubar_title, create_os_window,
current_application_quit_request, current_os_window, destroy_global_data,
@@ -245,8 +245,8 @@ class Boss:
self.clipboard = Clipboard()
self.primary_selection = Clipboard(GLFW_PRIMARY_SELECTION)
self.update_check_started = False
- self.encryption_key = EllipticCurveKey()
- self.encryption_public_key = f'{RC_ENCRYPTION_PROTOCOL_VERSION}:{base64.b85encode(self.encryption_key.public).decode("ascii")}'
+ #self.encryption_key = EllipticCurveKey()
+ #self.encryption_public_key = f'{RC_ENCRYPTION_PROTOCOL_VERSION}:{base64.b85encode(self.encryption_key.public).decode("ascii")}'
self.clipboard_buffers: Dict[str, str] = {}
self.update_check_process: Optional['PopenType[bytes]'] = None
self.window_id_map: WeakValueDictionary[int, Window] = WeakValueDictionary()

View File

@ -0,0 +1,14 @@
disable crypto/remote control functionality
Index: kitty/child.py
--- kitty/child.py.orig
+++ kitty/child.py
@@ -255,7 +255,7 @@ class Child:
env['TERM'] = fast_data_types.get_options().term
env['COLORTERM'] = 'truecolor'
env['KITTY_PID'] = getpid()
- env['KITTY_PUBLIC_KEY'] = boss.encryption_public_key
+ #env['KITTY_PUBLIC_KEY'] = boss.encryption_public_key
if self.add_listen_on_env_var and boss.listening_on:
env['KITTY_LISTEN_ON'] = boss.listening_on
else:

View File

@ -0,0 +1,14 @@
disable crypto/remote control functionality
Index: kitty/complete.py
--- kitty/complete.py.orig
+++ kitty/complete.py
@@ -16,7 +16,7 @@ from kittens.runner import (
from .cli import (
OptionDict, options_for_completion, parse_option_spec, prettify
)
-from .remote_control import global_options_spec
+#from .remote_control import global_options_spec
from .constants import config_dir, shell_integration_dir
from .fast_data_types import truncate_point_for_length, wcswidth
from .rc.base import all_command_names, command_for_name

View File

@ -0,0 +1,21 @@
disable crypto functionality
Index: kitty/data-types.c
--- kitty/data-types.c.orig
+++ kitty/data-types.c
@@ -263,7 +263,6 @@ extern int init_Line(PyObject *);
extern int init_ColorProfile(PyObject *);
extern int init_Screen(PyObject *);
extern bool init_fontconfig_library(PyObject*);
-extern bool init_crypto_library(PyObject*);
extern bool init_desktop(PyObject*);
extern bool init_fonts(PyObject*);
extern bool init_glfw(PyObject *m);
@@ -346,7 +345,6 @@ PyInit_fast_data_types(void) {
if (!init_fonts(m)) return NULL;
if (!init_utmp(m)) return NULL;
if (!init_loop_utils(m)) return NULL;
- if (!init_crypto_library(m)) return NULL;
CellAttrs a;
#define s(name, attr) { a.val = 0; a.attr = 1; PyModule_AddIntConstant(m, #name, shift_to_first_set_bit(a)); }

View File

@ -0,0 +1,40 @@
disable encrypted communication functionality
Index: kitty/remote_control.py
--- kitty/remote_control.py.orig
+++ kitty/remote_control.py
@@ -19,7 +19,7 @@ from .cli import emph, parse_args
from .cli_stub import RCOptions
from .constants import RC_ENCRYPTION_PROTOCOL_VERSION, appname, version
from .fast_data_types import (
- AES256GCMDecrypt, AES256GCMEncrypt, EllipticCurveKey, get_boss,
+ get_boss,
get_options, read_command_response, send_data_to_peer
)
from .rc.base import (
@@ -39,7 +39,7 @@ def encode_response_for_peer(response: Any) -> bytes:
return b'\x1bP@kitty-cmd' + json.dumps(response).encode('utf-8') + b'\x1b\\'
-def parse_cmd(serialized_cmd: str, encryption_key: EllipticCurveKey) -> Dict[str, Any]:
+def parse_cmd(serialized_cmd: str, encryption_key: '') -> Dict[str, Any]:
try:
pcmd = json.loads(serialized_cmd)
except Exception:
@@ -48,6 +48,8 @@ def parse_cmd(serialized_cmd: str, encryption_key: Ell
return {}
pcmd.pop('password', None)
if 'encrypted' in pcmd:
+ raise NotImplementedError("encrypted communication disabled on OpenBSD")
+ """
if pcmd.get('enc_proto', '1') != RC_ENCRYPTION_PROTOCOL_VERSION:
log_error(f'Ignoring encrypted rc command with unsupported protocol: {pcmd.get("enc_proto")}')
return {}
@@ -65,6 +67,7 @@ def parse_cmd(serialized_cmd: str, encryption_key: Ell
f'Ignoring encrypted rc command with timestamp {delta / 1e9:.1f} seconds from now.'
' Could be an attempt at a replay attack or an incorrect clock on a remote machine.')
return {}
+ """
return pcmd

View File

@ -1,11 +1,11 @@
remove -O3 and -march=native optimizations
fix man directory
disable wayland
disable wayland, libcrypto
Index: setup.py
--- setup.py.orig
+++ setup.py
@@ -314,7 +314,6 @@ def init_env(
@@ -355,7 +355,6 @@ def init_env(
df += ' -Og'
float_conversion = '-Wfloat-conversion'
fortify_source = '' if sanitize and is_macos else '-D_FORTIFY_SOURCE=2'
@ -13,7 +13,7 @@ Index: setup.py
sanitize_args = get_sanitize_args(cc, ccver) if sanitize else set()
cppflags_ = os.environ.get(
'OVERRIDE_CPPFLAGS', '-D{}DEBUG'.format('' if debug else 'N'),
@@ -328,12 +327,11 @@ def init_env(
@@ -369,12 +368,11 @@ def init_env(
werror = '' if ignore_compiler_warnings else '-pedantic-errors -Werror'
std = '' if is_openbsd else '-std=c11'
sanitize_flag = ' '.join(sanitize_args)
@ -28,7 +28,7 @@ Index: setup.py
)
)
cflags = shlex.split(cflags_) + shlex.split(
@@ -341,7 +339,7 @@ def init_env(
@@ -382,7 +380,7 @@ def init_env(
)
ldflags_ = os.environ.get(
'OVERRIDE_LDFLAGS',
@ -37,7 +37,25 @@ Index: setup.py
)
ldflags = shlex.split(ldflags_)
ldflags.append('-shared')
@@ -732,7 +730,7 @@ def find_c_files() -> Tuple[List[str], List[str]]:
@@ -447,7 +445,7 @@ def kitty_env() -> Env:
at_least_version('harfbuzz', 1, 5)
cflags.extend(pkg_config('libpng', '--cflags-only-I'))
cflags.extend(pkg_config('lcms2', '--cflags-only-I'))
- cflags.extend(libcrypto_cflags)
+ #cflags.extend(libcrypto_cflags)
if is_macos:
platform_libs = [
'-framework', 'Carbon', '-framework', 'CoreText', '-framework', 'CoreGraphics',
@@ -472,7 +470,7 @@ def kitty_env() -> Env:
gl_libs = ['-framework', 'OpenGL'] if is_macos else pkg_config('gl', '--libs')
libpng = pkg_config('libpng', '--libs')
lcms2 = pkg_config('lcms2', '--libs')
- ans.ldpaths += pylib + platform_libs + gl_libs + libpng + lcms2 + libcrypto_ldflags
+ ans.ldpaths += pylib + platform_libs + gl_libs + libpng + lcms2 #+ libcrypto_ldflags
if is_macos:
ans.ldpaths.extend('-framework Cocoa'.split())
elif not is_openbsd:
@@ -761,7 +759,7 @@ def find_c_files() -> Tuple[List[str], List[str]]:
def compile_glfw(compilation_database: CompilationDatabase) -> None:
@ -46,18 +64,18 @@ Index: setup.py
for module in modules.split():
try:
genv = glfw.init_env(env, pkg_config, pkg_version, at_least_version, test_compile, module)
@@ -842,8 +840,6 @@ def build_launcher(args: Options, launcher_dir: str =
@@ -892,8 +890,6 @@ def build_launcher(args: Options, launcher_dir: str =
cflags.append('-g')
if args.profile:
libs.append('-lprofiler')
- else:
- cflags.append('-O3')
- cflags.append('-g3' if args.debug else '-O3')
if bundle_type.endswith('-freeze'):
cppflags.append('-DFOR_BUNDLE')
cppflags.append(f'-DPYVER="{sysconfig.get_python_version()}"')
@@ -885,7 +881,7 @@ def build_launcher(args: Options, launcher_dir: str =
@@ -940,7 +936,7 @@ def build_launcher(args: Options, launcher_dir: str =
# Packaging {{{
def copy_man_pages(ddir: str) -> None:
- mandir = os.path.join(ddir, 'share', 'man')
+ mandir = os.path.join(ddir, 'man')

View File

@ -234,11 +234,45 @@ lib/kitty/kittens/ssh/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kittens/ssh/${MODPY_PYCACHE}completion.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kittens/ssh/${MODPY_PYCACHE}completion.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kittens/ssh/${MODPY_PYCACHE}completion.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kittens/ssh/${MODPY_PYCACHE}config.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kittens/ssh/${MODPY_PYCACHE}config.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kittens/ssh/${MODPY_PYCACHE}config.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kittens/ssh/${MODPY_PYCACHE}copy.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kittens/ssh/${MODPY_PYCACHE}copy.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kittens/ssh/${MODPY_PYCACHE}copy.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kittens/ssh/${MODPY_PYCACHE}main.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kittens/ssh/${MODPY_PYCACHE}main.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kittens/ssh/${MODPY_PYCACHE}main.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kittens/ssh/${MODPY_PYCACHE}utils.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kittens/ssh/${MODPY_PYCACHE}utils.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kittens/ssh/${MODPY_PYCACHE}utils.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kittens/ssh/completion.py
lib/kitty/kittens/ssh/config.py
lib/kitty/kittens/ssh/copy.py
lib/kitty/kittens/ssh/main.py
lib/kitty/kittens/ssh/options/
lib/kitty/kittens/ssh/options/__init__.py
${MODPY_COMMENT}lib/kitty/kittens/ssh/options/${MODPY_PYCACHE}/
lib/kitty/kittens/ssh/options/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kittens/ssh/options/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kittens/ssh/options/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kittens/ssh/options/${MODPY_PYCACHE}definition.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kittens/ssh/options/${MODPY_PYCACHE}definition.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kittens/ssh/options/${MODPY_PYCACHE}definition.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kittens/ssh/options/${MODPY_PYCACHE}parse.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kittens/ssh/options/${MODPY_PYCACHE}parse.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kittens/ssh/options/${MODPY_PYCACHE}parse.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kittens/ssh/options/${MODPY_PYCACHE}types.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kittens/ssh/options/${MODPY_PYCACHE}types.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kittens/ssh/options/${MODPY_PYCACHE}types.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kittens/ssh/options/${MODPY_PYCACHE}utils.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kittens/ssh/options/${MODPY_PYCACHE}utils.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kittens/ssh/options/${MODPY_PYCACHE}utils.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kittens/ssh/options/definition.py
lib/kitty/kittens/ssh/options/parse.py
lib/kitty/kittens/ssh/options/types.py
lib/kitty/kittens/ssh/options/utils.py
lib/kitty/kittens/ssh/utils.py
lib/kitty/kittens/themes/
lib/kitty/kittens/themes/__init__.py
${MODPY_COMMENT}lib/kitty/kittens/themes/${MODPY_PYCACHE}/
@ -371,6 +405,9 @@ lib/kitty/kitty/${MODPY_PYCACHE}cli_stub.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kitty/${MODPY_PYCACHE}client.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kitty/${MODPY_PYCACHE}client.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kitty/${MODPY_PYCACHE}client.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kitty/${MODPY_PYCACHE}clipboard.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kitty/${MODPY_PYCACHE}clipboard.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kitty/${MODPY_PYCACHE}clipboard.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kitty/${MODPY_PYCACHE}complete.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kitty/${MODPY_PYCACHE}complete.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kitty/${MODPY_PYCACHE}complete.${MODPY_PYC_MAGIC_TAG}pyc
@ -383,6 +420,9 @@ lib/kitty/kitty/${MODPY_PYCACHE}constants.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kitty/${MODPY_PYCACHE}debug_config.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kitty/${MODPY_PYCACHE}debug_config.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kitty/${MODPY_PYCACHE}debug_config.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kitty/${MODPY_PYCACHE}entry_points.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kitty/${MODPY_PYCACHE}entry_points.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kitty/${MODPY_PYCACHE}entry_points.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kitty/${MODPY_PYCACHE}file_transmission.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kitty/${MODPY_PYCACHE}file_transmission.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kitty/${MODPY_PYCACHE}file_transmission.${MODPY_PYC_MAGIC_TAG}pyc
@ -419,12 +459,18 @@ lib/kitty/kitty/${MODPY_PYCACHE}open_actions.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kitty/${MODPY_PYCACHE}os_window_size.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kitty/${MODPY_PYCACHE}os_window_size.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kitty/${MODPY_PYCACHE}os_window_size.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kitty/${MODPY_PYCACHE}prewarm.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kitty/${MODPY_PYCACHE}prewarm.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kitty/${MODPY_PYCACHE}prewarm.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kitty/${MODPY_PYCACHE}remote_control.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kitty/${MODPY_PYCACHE}remote_control.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kitty/${MODPY_PYCACHE}remote_control.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kitty/${MODPY_PYCACHE}rgb.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kitty/${MODPY_PYCACHE}rgb.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kitty/${MODPY_PYCACHE}rgb.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kitty/${MODPY_PYCACHE}search_query_parser.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kitty/${MODPY_PYCACHE}search_query_parser.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kitty/${MODPY_PYCACHE}search_query_parser.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kitty/${MODPY_PYCACHE}session.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kitty/${MODPY_PYCACHE}session.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kitty/${MODPY_PYCACHE}session.${MODPY_PYC_MAGIC_TAG}pyc
@ -434,6 +480,9 @@ lib/kitty/kitty/${MODPY_PYCACHE}shell.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kitty/${MODPY_PYCACHE}shell_integration.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kitty/${MODPY_PYCACHE}shell_integration.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kitty/${MODPY_PYCACHE}shell_integration.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kitty/${MODPY_PYCACHE}shm.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kitty/${MODPY_PYCACHE}shm.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kitty/${MODPY_PYCACHE}shm.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/kitty/${MODPY_PYCACHE}short_uuid.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/kitty/${MODPY_PYCACHE}short_uuid.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/kitty/${MODPY_PYCACHE}short_uuid.${MODPY_PYC_MAGIC_TAG}pyc
@ -480,6 +529,7 @@ lib/kitty/kitty/choose_entry.py
lib/kitty/kitty/cli.py
lib/kitty/kitty/cli_stub.py
lib/kitty/kitty/client.py
lib/kitty/kitty/clipboard.py
lib/kitty/kitty/complete.py
lib/kitty/kitty/conf/
lib/kitty/kitty/conf/__init__.py
@ -502,6 +552,7 @@ lib/kitty/kitty/conf/utils.py
lib/kitty/kitty/config.py
lib/kitty/kitty/constants.py
lib/kitty/kitty/debug_config.py
lib/kitty/kitty/entry_points.py
@so lib/kitty/kitty/fast_data_types.so
lib/kitty/kitty/file_transmission.py
lib/kitty/kitty/fonts/
@ -602,6 +653,7 @@ lib/kitty/kitty/options/parse.py
lib/kitty/kitty/options/types.py
lib/kitty/kitty/options/utils.py
lib/kitty/kitty/os_window_size.py
lib/kitty/kitty/prewarm.py
lib/kitty/kitty/rc/
lib/kitty/kitty/rc/__init__.py
${MODPY_COMMENT}lib/kitty/kitty/rc/${MODPY_PYCACHE}/
@ -750,9 +802,11 @@ lib/kitty/kitty/rc/set_window_title.py
lib/kitty/kitty/rc/signal_child.py
lib/kitty/kitty/remote_control.py
lib/kitty/kitty/rgb.py
lib/kitty/kitty/search_query_parser.py
lib/kitty/kitty/session.py
lib/kitty/kitty/shell.py
lib/kitty/kitty/shell_integration.py
lib/kitty/kitty/shm.py
lib/kitty/kitty/short_uuid.py
lib/kitty/kitty/tab_bar.py
lib/kitty/kitty/tabs.py
@ -775,9 +829,21 @@ lib/kitty/shell-integration/bash/
lib/kitty/shell-integration/bash/kitty.bash
lib/kitty/shell-integration/fish/
lib/kitty/shell-integration/fish/vendor_completions.d/
lib/kitty/shell-integration/fish/vendor_completions.d/clone-in-kitty.fish
lib/kitty/shell-integration/fish/vendor_completions.d/edit-in-kitty.fish
lib/kitty/shell-integration/fish/vendor_completions.d/kitty.fish
lib/kitty/shell-integration/fish/vendor_conf.d/
lib/kitty/shell-integration/fish/vendor_conf.d/kitty-shell-integration.fish
lib/kitty/shell-integration/ssh/
${MODPY_COMMENT}lib/kitty/shell-integration/ssh/${MODPY_PYCACHE}/
lib/kitty/shell-integration/ssh/${MODPY_PYCACHE}askpass.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/kitty/shell-integration/ssh/${MODPY_PYCACHE}askpass.${MODPY_PYC_MAGIC_TAG}opt-2.pyc
lib/kitty/shell-integration/ssh/${MODPY_PYCACHE}askpass.${MODPY_PYC_MAGIC_TAG}pyc
lib/kitty/shell-integration/ssh/askpass.py
lib/kitty/shell-integration/ssh/bootstrap-utils.sh
lib/kitty/shell-integration/ssh/bootstrap.py
lib/kitty/shell-integration/ssh/bootstrap.sh
lib/kitty/shell-integration/ssh/kitty
lib/kitty/shell-integration/zsh/
lib/kitty/shell-integration/zsh/.zshenv
lib/kitty/shell-integration/zsh/completions/
@ -785,6 +851,8 @@ lib/kitty/shell-integration/zsh/completions/_kitty
lib/kitty/shell-integration/zsh/kitty-integration
lib/kitty/shell-integration/zsh/kitty.zsh
lib/kitty/terminfo/
lib/kitty/terminfo/kitty.termcap
lib/kitty/terminfo/kitty.terminfo
lib/kitty/terminfo/x/
lib/kitty/terminfo/x/xterm-kitty
@man man/man1/kitty.1
@ -825,6 +893,7 @@ share/doc/kitty/html/_sources/file-transfer-protocol.rst.txt
share/doc/kitty/html/_sources/generated/
share/doc/kitty/html/_sources/generated/launch.rst.txt
share/doc/kitty/html/_sources/generated/rc.rst.txt
share/doc/kitty/html/_sources/generated/ssh-copy.rst.txt
share/doc/kitty/html/_sources/glossary.rst.txt
share/doc/kitty/html/_sources/graphics-protocol.rst.txt
share/doc/kitty/html/_sources/index.rst.txt
@ -842,6 +911,7 @@ share/doc/kitty/html/_sources/kittens/icat.rst.txt
share/doc/kitty/html/_sources/kittens/panel.rst.txt
share/doc/kitty/html/_sources/kittens/query_terminal.rst.txt
share/doc/kitty/html/_sources/kittens/remote_file.rst.txt
share/doc/kitty/html/_sources/kittens/ssh.rst.txt
share/doc/kitty/html/_sources/kittens/themes.rst.txt
share/doc/kitty/html/_sources/kittens/transfer.rst.txt
share/doc/kitty/html/_sources/kittens/unicode_input.rst.txt
@ -863,6 +933,7 @@ share/doc/kitty/html/_sources/support.rst.txt
share/doc/kitty/html/_sources/underlines.rst.txt
share/doc/kitty/html/_sources/unscroll.rst.txt
share/doc/kitty/html/_static/
share/doc/kitty/html/_static/_sphinx_javascript_frameworks_compat.js
share/doc/kitty/html/_static/basic.css
share/doc/kitty/html/_static/check-solid.svg
share/doc/kitty/html/_static/clipboard.min.js
@ -872,10 +943,12 @@ share/doc/kitty/html/_static/copybutton.js
share/doc/kitty/html/_static/copybutton_funcs.js
share/doc/kitty/html/_static/custom.css
share/doc/kitty/html/_static/custom.js
share/doc/kitty/html/_static/debug.css
share/doc/kitty/html/_static/doctools.js
share/doc/kitty/html/_static/documentation_options.js
share/doc/kitty/html/_static/file.png
share/doc/kitty/html/_static/jquery-3.5.1.js
share/doc/kitty/html/_static/jquery-3.6.0.js
share/doc/kitty/html/_static/jquery.js
share/doc/kitty/html/_static/kitty.svg
share/doc/kitty/html/_static/language_data.js
@ -889,6 +962,8 @@ share/doc/kitty/html/_static/scripts/furo.js
share/doc/kitty/html/_static/scripts/furo.js.LICENSE.txt
share/doc/kitty/html/_static/scripts/furo.js.map
share/doc/kitty/html/_static/searchtools.js
share/doc/kitty/html/_static/skeleton.css
share/doc/kitty/html/_static/sphinx_highlight.js
share/doc/kitty/html/_static/styles/
share/doc/kitty/html/_static/styles/furo-extensions.css
share/doc/kitty/html/_static/styles/furo-extensions.css.map
@ -911,6 +986,7 @@ share/doc/kitty/html/file-transfer-protocol.html
share/doc/kitty/html/generated/
share/doc/kitty/html/generated/launch.html
share/doc/kitty/html/generated/rc.html
share/doc/kitty/html/generated/ssh-copy.html
share/doc/kitty/html/genindex.html
share/doc/kitty/html/glossary.html
share/doc/kitty/html/graphics-protocol.html
@ -929,6 +1005,7 @@ share/doc/kitty/html/kittens/icat.html
share/doc/kitty/html/kittens/panel.html
share/doc/kitty/html/kittens/query_terminal.html
share/doc/kitty/html/kittens/remote_file.html
share/doc/kitty/html/kittens/ssh.html
share/doc/kitty/html/kittens/themes.html
share/doc/kitty/html/kittens/transfer.html
share/doc/kitty/html/kittens/unicode_input.html