pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/x11/kitty x11/kitty: update to 0.13.3 and fix build is...

branches:  trunk
changeset: 319077:d7befd348836
user:      gutteridge <>
date:      Mon Feb 04 01:11:15 2019 +0000

x11/kitty: update to 0.13.3 and fix build issues

Update to version 0.13.3. Separately, fix several build issues. The
most significant problem was that the builds were non-reproducible,
since elements of documentation were auto-generated to a directory
structure with a random naming element, so no two PLISTs were the

Also, it has a specific expectation it has the GNU ncurses version of
tic(1), given the output it requires. This would cause breakages in
NetBSD deployments that didn't happen to have ncurses installed from
pkgsrc already. (If ncurses was installed, this package would build
without it being noted as a dependency because the pkgsrc tools prefer
the pkgsrc installation paths first.) An alternate fix would be to
patch this package's custom Python code that calls tic(1) to work with
NetBSD's implementation, but I opted not to choose that because there
may be similar portability issues elsewhere. (E.g. looking at the man
page for tic[1] on Illumos, I see it doesn't even have an -o option

Change log:

0.13.3 [2019-01-19]

    icat kitten: Add a --stdin option to control if image data is read from STDIN (#1308)
    hints kitten: Start hints numbering at one instead of zero by default. Added an option --hints-offset to control it. (#1289)
    Fix a regression in the previous release that broke using background for cursor_text_color (#1288)
    macOS: Fix dragging kitty window tabs in traditional full screen mode causing crashes (#1296)
    macOS: Ensure that when running from a bundle, the bundle kitty exe is preferred over any kitty in PATH (#1280)
    macOS: Fix a regression that broke mapping of ctrl+tab (#1304)
    Add a list of user-created kittens to the docs
    Fix a regression that broke changing mouse wheel scroll direction with negative wheel_scroll_multiplier values in full-screen applications like vim (#1299)
    Fix background_opacity not working with pure white backgrounds (#1285)
    macOS: Fix "New OS Window" dock action not working when kitty is not focused (#1312)
    macOS: Add aliases for close window and new tab actions that conform to common Apple shortcuts for these actions (#1313)
    macOS: Fix some kittens causing 100% CPU usage

0.13.2 [2019-01-04]

    Add a new option tab_title_template to control how tab titles are formatted. In particular the template can be used to display the tab number next to the title (#1223)
    Report the current foreground processes as well as the original child process, when using kitty @ ls
    Use the current working directory of the foreground process for the *_with_cwd actions that open a new window with the current working directory.
    Add a new copy_or_interrupt action that can be mapped to kbd:ctrl+c. It will copy if there is a selection and interrupt otherwise (#1286)
    Fix setting background_opacity causing window margins/padding to be slightly different shade from background (#1221)
    Handle keyboards with a "+" key (#1224)
    Fix Private use Unicode area characters followed by spaces at the end of text not being rendered correctly (#1210)
    macOS: Add an entry to the dock menu to open a new OS window (#1242)
    macOS: Fix scrolling very slowly with wheel mice not working (#1238)
    Fix changing cursor_text_color via remote control not working (#1229)
    Add an action to resize windows that can be mapped to shortcuts in kitty.conf (#1245)
    Fix using the new_tab !neighbor action changing the order of the non-neighboring tabs (#1256)
    macOS: Fix momentum scrolling continuing when changing the active window/tab (#1267)

0.13.1 [2018-12-06]

    Fix passing input via the pipe action to a program without a window not working.
    Linux: Fix a regression in the previous release that caused automatic selection of bold/italic fonts when using aliases such as "monospace" to not work (#1209)
    Fix resizing window smaller and then restoring causing some wrapped lines to not be properly unwrapped (#1206)

0.13.0 [2018-12-05]

    Add an option scrollback_pager_history_size to tell kitty to store extended scrollback to use when viewing the scrollback buffer in a pager (#970)
    Modify the kittens sub-system to allow creating custom kittens without any user interface. This is useful for creating more complex actions that can be bound to key presses in kitty.conf. See 
doc:kittens/custom. (#870)
    Add a new nth_window action that can be used to go to the nth window and also previously active windows, using negative numbers. Similarly, goto_tab now accepts negative numbers to go to 
previously active tabs (#1040)
    Allow hiding the tab bar completely, by setting tab_bar_style to hidden. (#1014)
    Allow private use unicode characters to stretch over more than a single neighboring space (#1036)
    Add a new touch_scroll_multiplier option to modify the amount scrolled by high precision scrolling devices such as touchpads (#1129)
    icat kitten: Implement reading image data from STDIN, if STDIN is not connected to a terminal (#1130)
    hints kitten: Insert trailing spaces after matches when using the --multiple option. Also add a separate --add-trailing-space option to control this behavior (#1132)
    Fix the *_with_cwd actions using the cwd of the overlay window rather than the underlying window's cwd (#1045)
    Fix incorrect key repeat rate on wayland (#1055)
    macOS: Fix drag and drop of files not working on Mojave (#1058)
    macOS: Fix IME input for East Asian languages (#910)
    macOS: Fix rendering frames-per-second very low when processing large amounts of input in small chunks (#1082)
    macOS: Fix incorrect text sizes calculated when using an external display that is set to mirror the main display (#1056)
    macOS: Use the system default double click interval (#1090)
    macOS: Fix touch scrolling sensitivity low on retina screens (#1112)
    Linux: Fix incorrect rendering of some fonts when hinting is disabled at small sizes (#1173)
    Linux: Fix match rules used as aliases in Fontconfig configuration not being respected (#1085)
    Linux: Fix a crash when using the GNU Unifont as a fallback font (#1087)
    Wayland: Fix copying from hidden kitty windows hanging (#1051)
    Wayland: Add support for the primary selection protocol implemented by some compositors (#1095)
    Fix expansion of env vars not working in the env directive (#1075)
    Fix mouse_hide_wait only taking effect after an event such as cursor blink or key press (#1073)
    Fix the set_background_opacity action not working correctly (#1147)
    Fix second cell of emoji created using variation selectors not having the same attributes as the first cell (#1109)
    Fix focusing neighboring windows in the grid layout with less than 4 windows not working (#1115)
    Fix ctrl+shift+special key not working in normal and application keyboard modes (#1114)
    Add a terminfo entry for full keyboard mode.
    Fix incorrect text-antialiasing when using very low background opacity (#1005)
    When double or triple clicking ignore clicks if they are "far" from each other (#1093)
    Follow xterm's behavior for the menu key (#597)
    Fix hover detection of URLs not working when hovering over the first colon and slash characters in short URLs (#1201)


 x11/kitty/Makefile               |  27 +++++++++++++++++++++++++--
 x11/kitty/PLIST                  |  11 +++++------
 x11/kitty/distinfo               |  12 ++++++------
 x11/kitty/patches/ |  14 +++++++-------
 4 files changed, 43 insertions(+), 21 deletions(-)

diffs (173 lines):

diff -r c97f0236637e -r d7befd348836 x11/kitty/Makefile
--- a/x11/kitty/Makefile        Sun Feb 03 23:10:31 2019 +0000
+++ b/x11/kitty/Makefile        Mon Feb 04 01:11:15 2019 +0000
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.5 2019/01/29 04:42:57 gutteridge Exp $
+# $NetBSD: Makefile,v 1.6 2019/02/04 01:11:15 gutteridge Exp $
-DISTNAME=      kitty-0.12.3
+DISTNAME=      kitty-0.13.3
 GITHUB_PROJECT=        kitty
@@ -17,6 +17,10 @@
 .include "../../mk/"
+# kitty's homegrown packaging expects the functionality of tic(1) that
+# comes with ncurses.
 SUBST_CLASSES+=                python
 SUBST_STAGE.python=    pre-build
 SUBST_MESSAGE.python=  Replace path of Python interpreter.
@@ -25,6 +29,14 @@
 SUBST_SED.python+=     -e "s,python3,python${PYVERSSUFFIX},g"
 SUBST_SED.python+=     -e "s,sphinx-build,sphinx-build${PYVERSSUFFIX},g"
+# Sample auto-generated files are placed in randomly-named directories at
+# generation time, which makes for non-reproducible builds.
+SUBST_CLASSES+=                html
+SUBST_STAGE.html=      post-install
+SUBST_MESSAGE.html=    Replace path of auto-generated config samples.
+SUBST_FILES.html+=     ${DESTDIR}${PREFIX}/share/doc/kitty/html/conf.html
+SUBST_SED.html+=       -e "s,_downloads/[0-9a-f]\{32\}/,_downloads/,g"
 BUILD_DEPENDS+=        ${PYPKGPREFIX}-setuptools-[0-9]*:../../devel/py-setuptools
 BUILD_DEPENDS+=        ${PYPKGPREFIX}-sphinx-[0-9]*:../../textproc/py-sphinx
@@ -44,12 +56,23 @@
        ${INSTALL_DATA} ${WRKSRC}/man/man1/kitty.1 \
+# The other half of dealing with the non-reproducible (or just unneeded)
+# build artifacts.
+       ${FIND} ${DESTDIR}${PREFIX}/share/doc/kitty/html/_downloads \
+           -type f -name *.conf | ${XARGS} -I rep ${MV} rep \
+           ${DESTDIR}${PREFIX}/share/doc/kitty/html/_downloads
+       ${FIND} ${DESTDIR}${PREFIX}/share/doc/kitty/html/_downloads/* \
+           -type d | ${XARGS} ${RM} -rf
+       cd ${DESTDIR}${PREFIX}/share/doc/kitty/html/ && \
+           ${RM} -f .buildinfo .nojekyll objects.inv
 .if ${OPSYS} != "Darwin"
 .include "../../graphics/freetype2/"
 .include "../../fonts/fontconfig/"
 .include "../../graphics/hicolor-icon-theme/"
+.include "../../devel/ncurses/"
 .include "../../devel/zlib/"
 .include "../../fonts/harfbuzz/"
 .include "../../graphics/MesaLib/"
diff -r c97f0236637e -r d7befd348836 x11/kitty/PLIST
--- a/x11/kitty/PLIST   Sun Feb 03 23:10:31 2019 +0000
+++ b/x11/kitty/PLIST   Mon Feb 04 01:11:15 2019 +0000
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.3 2018/11/28 19:28:37 nia Exp $
+@comment $NetBSD: PLIST,v 1.4 2019/02/04 01:11:15 gutteridge Exp $
@@ -159,10 +159,8 @@
@@ -185,6 +183,7 @@
@@ -229,8 +228,8 @@
diff -r c97f0236637e -r d7befd348836 x11/kitty/distinfo
--- a/x11/kitty/distinfo        Sun Feb 03 23:10:31 2019 +0000
+++ b/x11/kitty/distinfo        Mon Feb 04 01:11:15 2019 +0000
@@ -1,8 +1,8 @@
-$NetBSD: distinfo,v 1.1 2018/11/28 18:48:58 nia Exp $
+$NetBSD: distinfo,v 1.2 2019/02/04 01:11:15 gutteridge Exp $
-SHA1 (kitty-0.12.3.tar.gz) = 09e8eeed197148f4128e6b71df1ec9fd31794c28
-RMD160 (kitty-0.12.3.tar.gz) = e5c8aee097f9a55e26cc41146e74297f62e66801
-SHA512 (kitty-0.12.3.tar.gz) = a70c20f5d71db8ecd63c23f593abb156953a07493a7ca8a111ae77f6682dc252fb036a4fe99f19764fc1d339af5afad6cb7072a250160bb663cac1a49684d36b
-Size (kitty-0.12.3.tar.gz) = 3485747 bytes
+SHA1 (kitty-0.13.3.tar.gz) = ee8222e270c18a0318cf23563e946af5fae1ff5e
+RMD160 (kitty-0.13.3.tar.gz) = 4eafc1541cc99ae1e22ffd4da0d6cb8684070666
+SHA512 (kitty-0.13.3.tar.gz) = 71273c0cd71ee2c49af5addeb9512c077f29d3f6e1843243c2cc174292e9ace18cbabd041ba8ef9ad8f41630cdaad01e0869c919634bb084e9724d612cd3a502
+Size (kitty-0.13.3.tar.gz) = 3510975 bytes
 SHA1 (patch-kitty_threading.h) = d6bf2285a2100479c44de2f9aa842b910ca8ba6d
-SHA1 ( = 74efa778a3d8139e7579cb721b57e4e7678bf33a
+SHA1 ( = dabdaa69ca56e799c93aa299635e0d2bd1d27f49
diff -r c97f0236637e -r d7befd348836 x11/kitty/patches/
--- a/x11/kitty/patches/  Sun Feb 03 23:10:31 2019 +0000
+++ b/x11/kitty/patches/  Mon Feb 04 01:11:15 2019 +0000
@@ -1,10 +1,10 @@
-$NetBSD:,v 1.1 2018/11/28 18:48:58 nia Exp $
+$NetBSD:,v 1.2 2019/02/04 01:11:15 gutteridge Exp $
 Use PKGMANDIR and sort out (C|CPP|LD)FLAGS.
----      2018-09-29 03:45:40.000000000 +0000
+---      2019-01-19 08:36:53.000000000 +0000
-@@ -179,41 +179,14 @@ def init_env(
+@@ -180,41 +180,14 @@ def init_env(
          df += ' -Og'
      optimize = df if debug or sanitize else '-O3'
      sanitize_args = get_sanitize_args(cc, ccver) if sanitize else set()
@@ -18,7 +18,7 @@
 -    cppflags = shlex.split(cppflags)
 -    cflags = os.environ.get(
 -        'OVERRIDE_CFLAGS', (
--            '-Wextra -Wno-missing-field-initializers -Wall -std=c99'
+-            '-Wextra -Wno-missing-field-initializers -Wall -std=c11'
 -            ' -pedantic-errors -Werror {} {} -fwrapv {} {} -pipe {} -fvisibility=hidden'
 -        ).format(
 -            optimize,
@@ -53,7 +53,7 @@
      if profile:
-@@ -508,14 +481,12 @@ def build_asan_launcher(args):
+@@ -518,14 +491,12 @@ def build_asan_launcher(args):
  def build_linux_launcher(args, launcher_dir='.', for_bundle=False, sh_launcher=False, for_freeze=False):
@@ -71,7 +71,7 @@
      if for_bundle or for_freeze:
-@@ -524,8 +495,6 @@ def build_linux_launcher(args, launcher_
+@@ -534,8 +505,6 @@ def build_linux_launcher(args, launcher_
      pylib = get_python_flags(cflags)
      exe = 'kitty-profile' if args.profile else 'kitty'
@@ -80,7 +80,7 @@
      ldflags = shlex.split(os.environ.get('LDFLAGS', ''))
      if for_freeze:
          ldflags += ['-Wl,-rpath,$ORIGIN/../lib']
-@@ -540,7 +509,7 @@ def build_linux_launcher(args, launcher_
+@@ -550,7 +519,7 @@ def build_linux_launcher(args, launcher_
  def copy_man_pages(ddir):

Home | Main Index | Thread Index | Old Index