Hi, I know it's been forever since you sent this. My apologies - work and moving cross-country this summer have made it so I had less time for ports work than I generally want to have.
Just letting you know that I appreciated the diff and am planning to update kitty soon. With the slowdown, I want to wait until the ports tree is unlocked again for post-7.2. It might be best to update with your patch first, as I'm running into issues with the latest version 0.26.2. Looks like this requires OpenSSL 3 from ports now and wouldn't work with LibreSSL anymore. Some libraries are now opened dynamically (fontconfig, freetype). And I'm still getting a runtime error when I try it: $ kitty Traceback (most recent call last): File "/usr/local/lib/python3.9/runpy.py", line 197, in _run_module_as_main return _run_code(code, main_globals, None, File "/usr/local/lib/python3.9/runpy.py", line 87, in _run_code exec(code, run_globals) File "/usr/local/bin/../lib/kitty/__main__.py", line 6, in <module> from kitty.entry_points import main ModuleNotFoundError: No module named 'kitty.entry_points' The test target also stopped working... I'm attaching the diff for 0.26.2 at the bottom if you're interested in taking a look at it yourself. Thomas On Wed, Jun 08, 2022 at 12:50:13AM +0000, Yifei Zhan wrote: > update x11/kitty from 0.24.4 to 0.25.1 > > Basic terminal features tested on amd64 and arm64. > > From https://sw.kovidgoyal.net/kitty/changelog/ : > > The ssh kitten is redesigned with powerful new features: > Automatic Shell integration on remote machines > Easily clone local shell/editor config on remote machines > Easily edit files in your local editor on remote machines > > I'm able to ssh into other hosts with ssh kitten but nothing else is > tested. > > Automatic re-use of existing connections to avoid connection setup latency > diff --git a/x11/kitty/Makefile b/x11/kitty/Makefile > index ce4f752e393..dcdd4c42614 100644 > --- a/x11/kitty/Makefile > +++ b/x11/kitty/Makefile > @@ -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.25.1 > DISTNAME = kitty-${MODPY_EGG_VERSION} > CATEGORIES = x11 > HOMEPAGE = https://sw.kovidgoyal.net/kitty/ > diff --git a/x11/kitty/distinfo b/x11/kitty/distinfo > index 7ca24410b4e..1024730f1e1 100644 > --- a/x11/kitty/distinfo > +++ b/x11/kitty/distinfo > @@ -1,2 +1,2 @@ > -SHA256 (kitty-0.24.4.tar.xz) = 2M0LSWe7YeKjQntXy59F8niBP7a5hvl7NwyMUKoFjRg= > -SIZE (kitty-0.24.4.tar.xz) = 4613232 > +SHA256 (kitty-0.25.1.tar.xz) = WEiNJbu8KcQWOQLetAFQ8sgSUsLX3SywObsmH8awSfY= > +SIZE (kitty-0.25.1.tar.xz) = 4671008 > diff --git a/x11/kitty/pkg/PLIST b/x11/kitty/pkg/PLIST > index 5944b8903cf..63bba52fd83 100644 > --- a/x11/kitty/pkg/PLIST > +++ b/x11/kitty/pkg/PLIST > @@ -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}/ > @@ -425,6 +459,9 @@ > 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 +471,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 > @@ -750,9 +790,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 > @@ -778,6 +820,16 @@ lib/kitty/shell-integration/fish/vendor_completions.d/ > 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 +837,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 +879,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 +897,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 > @@ -911,6 +967,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 +986,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 Index: Makefile =================================================================== RCS file: /cvs/ports/x11/kitty/Makefile,v retrieving revision 1.13 diff -u -p -r1.13 Makefile --- Makefile 13 Mar 2022 16:22:00 -0000 1.13 +++ Makefile 14 Sep 2022 18:20:27 -0000 @@ -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.2 DISTNAME = kitty-${MODPY_EGG_VERSION} CATEGORIES = x11 HOMEPAGE = https://sw.kovidgoyal.net/kitty/ @@ -12,8 +12,8 @@ MAINTAINER = Thomas Frohwein <thfr@open # GPLv3+ PERMIT_PACKAGE = Yes -# libcanberra is dlopen(3)'d in desktop.c -WANTLIB += GL X11 X11-xcb Xcursor Xinerama Xrandr c canberra dbus-1 +# canberra, fontconfig, freetype are loaded dynamically +WANTLIB += GL X11 X11-xcb Xcursor Xinerama Xrandr c canberra crypto dbus-1 WANTLIB += fontconfig freetype harfbuzz intl lcms2 m png pthread rsync WANTLIB += util xcb xkbcommon xkbcommon-x11 z ${MODPY_WANTLIB} @@ -27,6 +27,7 @@ MODULES = lang/python MODPY_DISTUTILS_BUILD = linux-package MODPY_SETUP_ARGS += --verbose \ --extra-include-dirs=${LOCALBASE}/include \ + --extra-include-dirs=${LOCALBASE}/include/eopenssl30 \ --extra-library-dirs=${LOCALBASE}/lib # this disables checking upstream for updates MODPY_SETUP_ARGS += --update-check-interval=0 @@ -35,6 +36,7 @@ MODPY_SETUP_ARGS += --update-check-inter # graphics/ImageMagick (to use the kitty icat tool to display images in # the terminal) # textproc/py-pygments (for syntax highlighting in kitty +kitten diff) +BUILD_DEPENDS = security/openssl/3.0 RUN_DEPENDS = devel/desktop-file-utils \ x11/gtk+3,-guic LIB_DEPENDS = audio/libcanberra \ Index: distinfo =================================================================== RCS file: /cvs/ports/x11/kitty/distinfo,v retrieving revision 1.7 diff -u -p -r1.7 distinfo --- distinfo 13 Mar 2022 16:22:00 -0000 1.7 +++ distinfo 14 Sep 2022 18:20:27 -0000 @@ -1,2 +1,2 @@ -SHA256 (kitty-0.24.4.tar.xz) = 2M0LSWe7YeKjQntXy59F8niBP7a5hvl7NwyMUKoFjRg= -SIZE (kitty-0.24.4.tar.xz) = 4613232 +SHA256 (kitty-0.26.2.tar.xz) = WG/1mcWj8xgxsqMt2fqvrLbDWB8lYfjdyrC6gVvH2rQ= +SIZE (kitty-0.26.2.tar.xz) = 4716932 Index: patches/patch-setup_py =================================================================== RCS file: /cvs/ports/x11/kitty/patches/patch-setup_py,v retrieving revision 1.8 diff -u -p -r1.8 patch-setup_py --- patches/patch-setup_py 13 Mar 2022 16:22:00 -0000 1.8 +++ patches/patch-setup_py 14 Sep 2022 18:20:27 -0000 @@ -5,7 +5,7 @@ disable wayland 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,7 @@ Index: setup.py ) ldflags = shlex.split(ldflags_) ldflags.append('-shared') -@@ -732,7 +730,7 @@ def find_c_files() -> Tuple[List[str], List[str]]: +@@ -761,7 +759,7 @@ def find_c_files() -> Tuple[List[str], List[str]]: def compile_glfw(compilation_database: CompilationDatabase) -> None: @@ -46,18 +46,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')