git: 18c12117db74 - main - x11/kitty: + Fast GPU-based terminal emulator.

Gleb Popov arrowd at FreeBSD.org
Wed May 19 15:29:12 UTC 2021


The branch main has been updated by arrowd:

URL: https://cgit.FreeBSD.org/ports/commit/?id=18c12117db747a2654d5c8d86fad4dd8835b5823

commit 18c12117db747a2654d5c8d86fad4dd8835b5823
Author:     Alexis Praga <alexis.praga at free.fr>
AuthorDate: 2021-05-19 15:18:24 +0000
Commit:     Gleb Popov <arrowd at FreeBSD.org>
CommitDate: 2021-05-19 15:28:23 +0000

    x11/kitty: + Fast GPU-based terminal emulator.
    
    PR:             233010
---
 x11/kitty/Makefile  |  67 +++++++++++++++++++++
 x11/kitty/distinfo  |   3 +
 x11/kitty/pkg-descr |  18 ++++++
 x11/kitty/pkg-plist | 170 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 258 insertions(+)

diff --git a/x11/kitty/Makefile b/x11/kitty/Makefile
new file mode 100644
index 000000000000..0cb08dbff9c4
--- /dev/null
+++ b/x11/kitty/Makefile
@@ -0,0 +1,67 @@
+#
+
+PORTNAME=	kitty
+DISTVERSIONPREFIX=	v
+DISTVERSION=	0.20.3
+CATEGORIES=	x11
+
+MAINTAINER=	alexis.praga at free.fr
+COMMENT=	Cross-platform, fast, featureful, GPU-based terminal emulator
+
+LICENSE=	GPLv3
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	sphinx-build:textproc/py-sphinx@${PY_FLAVOR} \
+		wayland-protocols>=0:graphics/wayland-protocols
+LIB_DEPENDS=	libdbus-1.so:devel/dbus \
+		libfontconfig.so:x11-fonts/fontconfig \
+		libfreetype.so:print/freetype2 \
+		libharfbuzz.so:print/harfbuzz \
+		liblcms2.so:graphics/lcms2 \
+		libpng.so:graphics/png \
+		libwayland-client.so:graphics/wayland \
+		libwayland-cursor.so:graphics/wayland \
+		libxkbcommon.so:x11/libxkbcommon
+
+USES=		gettext-runtime gl gmake ncurses:port pkgconfig python:3.5+ \
+		shebangfix terminfo xorg
+USE_GITHUB=	yes
+GH_ACCOUNT=	kovidgoyal
+USE_GL=		gl
+USE_XORG=	x11 xcb xcursor xi xinerama xrandr
+
+SHEBANG_FILES=	build-terminfo count-lines-of-code mypy-editor-integration \
+		update-on-ox update-on-ubuntu
+SHEBANG_GLOB=	*.py
+
+TEST_ENV=	PATH="${STAGEDIR}${PREFIX}/bin:${PATH}"
+TEST_TARGET=	test
+
+.if exists(/usr/bin/ld.lld) && ${/usr/bin/ld:L:tA} != /usr/bin/ld.lld
+# --build-id isn't supported by old GNU ld.bfd in base
+LDFLAGS+=	-fuse-ld=lld
+.endif
+
+BINARY_ALIAS=	python3=${PYTHON_CMD} python=${PYTHON_CMD}
+
+INSTALL_WRKSRC=	${WRKSRC}/linux-package
+
+_STRIP_TARGETS=	lib/kitty/kitty/fast_data_types.so lib/kitty/kitty/glfw-x11.so \
+		lib/kitty/kittens/diff/diff_speedup.so \
+		lib/kitty/kittens/unicode_input/unicode_names.so \
+		lib/kitty/kitty/glfw-wayland.so \
+		lib/kitty/kittens/choose/subseq_matcher.so bin/kitty
+_EMPTY_DIRS=	kittens/choose kittens/diff kittens/unicode_input kittens kitty
+
+do-build:
+	(cd ${WRKSRC} && \
+		${SETENV} ${MAKE_ENV} ${PYTHON_CMD} setup.py linux-package --update-check-interval 0)
+	${FIND} ${INSTALL_WRKSRC} -name __pycache__ -type d -exec ${RM} -r -- {} +
+
+do-install:
+	${CP} -a ${INSTALL_WRKSRC}/ ${STAGEDIR}${PREFIX}
+	${STRIP_CMD} ${_STRIP_TARGETS:S|^|${STAGEDIR}${PREFIX}/|}
+	${INSTALL_DATA} ${WRKSRC}/terminfo/kitty.terminfo \
+		${STAGEDIR}${PREFIX}/share/misc/
+
+.include <bsd.port.mk>
diff --git a/x11/kitty/distinfo b/x11/kitty/distinfo
new file mode 100644
index 000000000000..008f2ba6b2c2
--- /dev/null
+++ b/x11/kitty/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1621171439
+SHA256 (kovidgoyal-kitty-v0.20.3_GH0.tar.gz) = 7048cc0e6c17fe5ef3fbac18125dbd5f05d6c628838f004b8e2ad3546fb77d85
+SIZE (kovidgoyal-kitty-v0.20.3_GH0.tar.gz) = 4229573
diff --git a/x11/kitty/pkg-descr b/x11/kitty/pkg-descr
new file mode 100644
index 000000000000..6042101c1936
--- /dev/null
+++ b/x11/kitty/pkg-descr
@@ -0,0 +1,18 @@
+Kitty is the fast, featureful, GPU based terminal emulator.
+
+kitty is designed for power keyboard users. To that end all its controls work
+with the keyboard (although it fully supports mouse interactions as well). Its
+configuration is a simple, human editable, single file for easy reproducibility
+(I like to store configuration in source control).
+
+The code in kitty is designed to be simple, modular and hackable. It is written
+in a mix of C (for performance sensitive parts) and Python (for easy hackability
+of the UI). It does not depend on any large and complex UI toolkit, using only
+OpenGL for rendering everything.
+
+Finally, kitty is designed from the ground up to support all modern terminal
+features, such as unicode, true color, bold/italic fonts, text formatting, etc.
+It even extends existing text formatting escape codes, to add support for
+features not available elsewhere, such as colored and styled (curly) underlines.
+One of the design goals of kitty is to be easily extensible so that new features
+can be added in the future with relatively less effort.
diff --git a/x11/kitty/pkg-plist b/x11/kitty/pkg-plist
new file mode 100644
index 000000000000..89ecb5ba0ee7
--- /dev/null
+++ b/x11/kitty/pkg-plist
@@ -0,0 +1,170 @@
+bin/kitty
+lib/kitty/__main__.py
+lib/kitty/kittens/__init__.py
+lib/kitty/kittens/ask/__init__.py
+lib/kitty/kittens/ask/main.py
+lib/kitty/kittens/broadcast/__init__.py
+lib/kitty/kittens/broadcast/main.py
+lib/kitty/kittens/choose/__init__.py
+lib/kitty/kittens/choose/main.py
+lib/kitty/kittens/choose/subseq_matcher.so
+lib/kitty/kittens/clipboard/__init__.py
+lib/kitty/kittens/clipboard/main.py
+lib/kitty/kittens/diff/__init__.py
+lib/kitty/kittens/diff/collect.py
+lib/kitty/kittens/diff/config.py
+lib/kitty/kittens/diff/config_data.py
+lib/kitty/kittens/diff/diff_speedup.so
+lib/kitty/kittens/diff/highlight.py
+lib/kitty/kittens/diff/main.py
+lib/kitty/kittens/diff/patch.py
+lib/kitty/kittens/diff/render.py
+lib/kitty/kittens/diff/search.py
+lib/kitty/kittens/hints/__init__.py
+lib/kitty/kittens/hints/main.py
+lib/kitty/kittens/hints/url_regex.py
+lib/kitty/kittens/hyperlinked_grep/__init__.py
+lib/kitty/kittens/hyperlinked_grep/main.py
+lib/kitty/kittens/icat/__init__.py
+lib/kitty/kittens/icat/main.py
+lib/kitty/kittens/panel/__init__.py
+lib/kitty/kittens/panel/main.py
+lib/kitty/kittens/query_terminal/__init__.py
+lib/kitty/kittens/query_terminal/main.py
+lib/kitty/kittens/remote_file/__init__.py
+lib/kitty/kittens/remote_file/main.py
+lib/kitty/kittens/resize_window/__init__.py
+lib/kitty/kittens/resize_window/main.py
+lib/kitty/kittens/runner.py
+lib/kitty/kittens/show_error/__init__.py
+lib/kitty/kittens/show_error/main.py
+lib/kitty/kittens/show_key/__init__.py
+lib/kitty/kittens/show_key/kitty_mode.py
+lib/kitty/kittens/show_key/main.py
+lib/kitty/kittens/ssh/__init__.py
+lib/kitty/kittens/ssh/main.py
+lib/kitty/kittens/tui/__init__.py
+lib/kitty/kittens/tui/dircolors.py
+lib/kitty/kittens/tui/handler.py
+lib/kitty/kittens/tui/images.py
+lib/kitty/kittens/tui/line_edit.py
+lib/kitty/kittens/tui/loop.py
+lib/kitty/kittens/tui/operations.py
+lib/kitty/kittens/tui/operations_stub.py
+lib/kitty/kittens/tui/path_completer.py
+lib/kitty/kittens/tui/utils.py
+lib/kitty/kittens/unicode_input/__init__.py
+lib/kitty/kittens/unicode_input/main.py
+lib/kitty/kittens/unicode_input/unicode_names.so
+lib/kitty/kitty/__init__.py
+lib/kitty/kitty/bgimage_fragment.glsl
+lib/kitty/kitty/bgimage_vertex.glsl
+lib/kitty/kitty/blit_fragment.glsl
+lib/kitty/kitty/blit_vertex.glsl
+lib/kitty/kitty/border_fragment.glsl
+lib/kitty/kitty/border_vertex.glsl
+lib/kitty/kitty/borders.py
+lib/kitty/kitty/boss.py
+lib/kitty/kitty/cell_fragment.glsl
+lib/kitty/kitty/cell_vertex.glsl
+lib/kitty/kitty/child.py
+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/complete.py
+lib/kitty/kitty/conf/__init__.py
+lib/kitty/kitty/conf/definition.py
+lib/kitty/kitty/conf/utils.py
+lib/kitty/kitty/config.py
+lib/kitty/kitty/config_data.py
+lib/kitty/kitty/constants.py
+lib/kitty/kitty/fast_data_types.so
+lib/kitty/kitty/fonts/__init__.py
+lib/kitty/kitty/fonts/box_drawing.py
+lib/kitty/kitty/fonts/core_text.py
+lib/kitty/kitty/fonts/fontconfig.py
+lib/kitty/kitty/fonts/list.py
+lib/kitty/kitty/fonts/render.py
+lib/kitty/kitty/glfw-wayland.so
+lib/kitty/kitty/glfw-x11.so
+lib/kitty/kitty/graphics_fragment.glsl
+lib/kitty/kitty/graphics_vertex.glsl
+lib/kitty/kitty/guess_mime_type.py
+lib/kitty/kitty/key_encoding.py
+lib/kitty/kitty/key_names.py
+lib/kitty/kitty/keys.py
+lib/kitty/kitty/launch.py
+lib/kitty/kitty/launcher/kitty
+lib/kitty/kitty/layout/__init__.py
+lib/kitty/kitty/layout/base.py
+lib/kitty/kitty/layout/grid.py
+lib/kitty/kitty/layout/interface.py
+lib/kitty/kitty/layout/splits.py
+lib/kitty/kitty/layout/stack.py
+lib/kitty/kitty/layout/tall.py
+lib/kitty/kitty/layout/vertical.py
+lib/kitty/kitty/main.py
+lib/kitty/kitty/marks.py
+lib/kitty/kitty/multiprocessing.py
+lib/kitty/kitty/notify.py
+lib/kitty/kitty/open_actions.py
+lib/kitty/kitty/options_stub.py
+lib/kitty/kitty/os_window_size.py
+lib/kitty/kitty/rc/__init__.py
+lib/kitty/kitty/rc/base.py
+lib/kitty/kitty/rc/close_tab.py
+lib/kitty/kitty/rc/close_window.py
+lib/kitty/kitty/rc/create_marker.py
+lib/kitty/kitty/rc/detach_tab.py
+lib/kitty/kitty/rc/detach_window.py
+lib/kitty/kitty/rc/disable_ligatures.py
+lib/kitty/kitty/rc/env.py
+lib/kitty/kitty/rc/focus_tab.py
+lib/kitty/kitty/rc/focus_window.py
+lib/kitty/kitty/rc/get_colors.py
+lib/kitty/kitty/rc/get_text.py
+lib/kitty/kitty/rc/goto_layout.py
+lib/kitty/kitty/rc/kitten.py
+lib/kitty/kitty/rc/last_used_layout.py
+lib/kitty/kitty/rc/launch.py
+lib/kitty/kitty/rc/ls.py
+lib/kitty/kitty/rc/new_window.py
+lib/kitty/kitty/rc/remove_marker.py
+lib/kitty/kitty/rc/resize_window.py
+lib/kitty/kitty/rc/scroll_window.py
+lib/kitty/kitty/rc/send_text.py
+lib/kitty/kitty/rc/set_background_image.py
+lib/kitty/kitty/rc/set_background_opacity.py
+lib/kitty/kitty/rc/set_colors.py
+lib/kitty/kitty/rc/set_font_size.py
+lib/kitty/kitty/rc/set_spacing.py
+lib/kitty/kitty/rc/set_tab_title.py
+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/session.py
+lib/kitty/kitty/shell.py
+lib/kitty/kitty/tab_bar.py
+lib/kitty/kitty/tabs.py
+lib/kitty/kitty/terminfo.py
+lib/kitty/kitty/tint_fragment.glsl
+lib/kitty/kitty/tint_vertex.glsl
+lib/kitty/kitty/types.py
+lib/kitty/kitty/typing.py
+lib/kitty/kitty/update_check.py
+lib/kitty/kitty/utils.py
+lib/kitty/kitty/window.py
+lib/kitty/kitty/window_list.py
+lib/kitty/logo/beam-cursor.png
+lib/kitty/logo/beam-cursor at 2x.png
+lib/kitty/logo/kitty-128.png
+lib/kitty/logo/kitty.png
+lib/kitty/terminfo/x/xterm-kitty
+share/applications/kitty.desktop
+share/icons/hicolor/256x256/apps/kitty.png
+share/man/man1/kitty.1.gz
+share/man/man5/kitty.conf.5.gz
+share/misc/kitty.terminfo
+share/terminfo/x/xterm-kitty


More information about the dev-commits-ports-all mailing list