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')

Reply via email to