summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgutteridge <gutteridge@pkgsrc.org>2019-02-04 01:11:15 +0000
committergutteridge <gutteridge@pkgsrc.org>2019-02-04 01:11:15 +0000
commitd7caa7e4e1672f409621469e9a5095d2b31ac35d (patch)
treee6e3aead748d87bba13d1ed7ee4b8d9d67c3601b
parentb89249ffe186dd1452817ef407fdf159fa802cb0 (diff)
downloadpkgsrc-d7caa7e4e1672f409621469e9a5095d2b31ac35d.tar.gz
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 same. 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 listed.) 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)
-rw-r--r--x11/kitty/Makefile27
-rw-r--r--x11/kitty/PLIST11
-rw-r--r--x11/kitty/distinfo12
-rw-r--r--x11/kitty/patches/patch-setup.py14
4 files changed, 43 insertions, 21 deletions
diff --git a/x11/kitty/Makefile b/x11/kitty/Makefile
index 63e798ecaf0..eff243dd76c 100644
--- a/x11/kitty/Makefile
+++ b/x11/kitty/Makefile
@@ -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
CATEGORIES= x11
MASTER_SITES= ${MASTER_SITE_GITHUB:=kovidgoyal/}
GITHUB_PROJECT= kitty
@@ -17,6 +17,10 @@ BUILD_TARGET= app
.include "../../mk/bsd.prefs.mk"
+# kitty's homegrown packaging expects the functionality of tic(1) that
+# comes with ncurses.
+USE_NCURSES= yes
+
SUBST_CLASSES+= python
SUBST_STAGE.python= pre-build
SUBST_MESSAGE.python= Replace path of Python interpreter.
@@ -25,6 +29,14 @@ SUBST_FILES.python+= docs/Makefile
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 @@ do-install:
${INSTALL_DATA} ${WRKSRC}/man/man1/kitty.1 \
${DESTDIR}${PREFIX}/${PKGMANDIR}/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/buildlink3.mk"
.include "../../fonts/fontconfig/buildlink3.mk"
.endif
.include "../../graphics/hicolor-icon-theme/buildlink3.mk"
+.include "../../devel/ncurses/buildlink3.mk"
.include "../../devel/zlib/buildlink3.mk"
.include "../../fonts/harfbuzz/buildlink3.mk"
.include "../../graphics/MesaLib/buildlink3.mk"
diff --git a/x11/kitty/PLIST b/x11/kitty/PLIST
index e098a071db6..e1ee1b582d9 100644
--- a/x11/kitty/PLIST
+++ b/x11/kitty/PLIST
@@ -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 $
bin/kitty
lib/kitty/__main__.py
lib/kitty/__main__.pyo
@@ -159,10 +159,8 @@ lib/kitty/logo/kitty.rgba
lib/kitty/terminfo/x/xterm-kitty
man/man1/kitty.1
share/applications/kitty.desktop
-share/doc/kitty/html/.buildinfo
-share/doc/kitty/html/.nojekyll
-share/doc/kitty/html/_downloads/7cb11c46fdfc0ef332e693a52d23cc9d/diff.conf
-share/doc/kitty/html/_downloads/b7aa12c1e980d68be9bc7488795e5d36/kitty.conf
+share/doc/kitty/html/_downloads/diff.conf
+share/doc/kitty/html/_downloads/kitty.conf
share/doc/kitty/html/_images/diff.png
share/doc/kitty/html/_images/hints_mode.png
share/doc/kitty/html/_images/panel.png
@@ -185,6 +183,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/unicode-input.rst.txt
share/doc/kitty/html/_sources/performance.rst.txt
+share/doc/kitty/html/_sources/pipe.rst.txt
share/doc/kitty/html/_sources/protocol-extensions.rst.txt
share/doc/kitty/html/_sources/remote-control.rst.txt
share/doc/kitty/html/_sources/support.rst.txt
@@ -229,8 +228,8 @@ share/doc/kitty/html/kittens/hints.html
share/doc/kitty/html/kittens/icat.html
share/doc/kitty/html/kittens/panel.html
share/doc/kitty/html/kittens/unicode-input.html
-share/doc/kitty/html/objects.inv
share/doc/kitty/html/performance.html
+share/doc/kitty/html/pipe.html
share/doc/kitty/html/protocol-extensions.html
share/doc/kitty/html/remote-control.html
share/doc/kitty/html/search.html
diff --git a/x11/kitty/distinfo b/x11/kitty/distinfo
index af94aeb4cca..bba99bf1ed3 100644
--- a/x11/kitty/distinfo
+++ b/x11/kitty/distinfo
@@ -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 (patch-setup.py) = 74efa778a3d8139e7579cb721b57e4e7678bf33a
+SHA1 (patch-setup.py) = dabdaa69ca56e799c93aa299635e0d2bd1d27f49
diff --git a/x11/kitty/patches/patch-setup.py b/x11/kitty/patches/patch-setup.py
index 21241449423..fa23fceb11a 100644
--- a/x11/kitty/patches/patch-setup.py
+++ b/x11/kitty/patches/patch-setup.py
@@ -1,10 +1,10 @@
-$NetBSD: patch-setup.py,v 1.1 2018/11/28 18:48:58 nia Exp $
+$NetBSD: patch-setup.py,v 1.2 2019/02/04 01:11:15 gutteridge Exp $
Use PKGMANDIR and sort out (C|CPP|LD)FLAGS.
---- setup.py.orig 2018-09-29 03:45:40.000000000 +0000
+--- setup.py.orig 2019-01-19 08:36:53.000000000 +0000
+++ setup.py
-@@ -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 @@ Use PKGMANDIR and sort out (C|CPP|LD)FLAGS.
- 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 @@ Use PKGMANDIR and sort out (C|CPP|LD)FLAGS.
if profile:
cppflags.append('-DWITH_PROFILER')
-@@ -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 @@ Use PKGMANDIR and sort out (C|CPP|LD)FLAGS.
if for_bundle or for_freeze:
cppflags.append('-DFOR_BUNDLE')
cppflags.append('-DPYVER="{}"'.format(sysconfig.get_python_version()))
-@@ -524,8 +495,6 @@ def build_linux_launcher(args, launcher_
+@@ -534,8 +505,6 @@ def build_linux_launcher(args, launcher_
cppflags.append('-DLIB_DIR_NAME="{}"'.format(args.libdir_name.strip('/')))
pylib = get_python_flags(cflags)
exe = 'kitty-profile' if args.profile else 'kitty'
@@ -80,7 +80,7 @@ Use PKGMANDIR and sort out (C|CPP|LD)FLAGS.
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):