diff --git a/buildmode-and-skip_docs.diff b/buildmode-and-skip_docs.diff new file mode 100644 index 0000000..01fe33e --- /dev/null +++ b/buildmode-and-skip_docs.diff @@ -0,0 +1,28 @@ +--- setup.py.smb 2024-01-19 09:43:25.073225511 -0500 ++++ setup.py 2024-01-19 10:26:09.830214118 -0500 +@@ -980,7 +980,7 @@ + if args.skip_building_kitten: + print('Skipping building of the kitten binary because of a command line option. Build is incomplete', file=sys.stderr) + return '' +- cmd = [go, 'build', '-v'] ++ cmd = [go, 'build', '-buildmode=pie', '-v'] + vcs_rev = args.vcs_rev or get_vcs_rev() + ld_flags: List[str] = [] + binary_data_flags = [f"-X kitty.VCSRevision={vcs_rev}"] +@@ -1165,13 +1165,14 @@ + base = Path(ddir) + in_src_launcher = base / (f'{libdir_name}/kitty/kitty/launcher/kitty') + launcher = base / 'bin/kitty' +- skip_docs = False ++ skip_docs = True + if not os.path.exists('docs/_build/html'): + kitten_exe = os.path.join(os.path.dirname(str(launcher)), 'kitten') + if os.path.exists(kitten_exe): + os.environ['KITTEN_EXE_FOR_DOCS'] = kitten_exe + make = 'gmake' if is_freebsd else 'make' +- run_tool([make, 'docs']) ++ if not skip_docs: ++ run_tool([make, 'docs']) + else: + if args.skip_building_kitten: + skip_docs = True diff --git a/go-buildmode-pie.diff b/go-buildmode-pie.diff deleted file mode 100644 index 31aa859..0000000 --- a/go-buildmode-pie.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- setup.py.smb 2023-11-08 10:32:56.057065865 -0500 -+++ setup.py 2023-11-08 10:33:34.650540523 -0500 -@@ -970,7 +970,7 @@ - raise SystemExit(f'The version of go on this system ({current_go_version}) is too old. go >= {required_go_version} is needed') - if not for_platform: - update_go_generated_files(args, os.path.join(launcher_dir, appname)) -- cmd = [go, 'build', '-v'] -+ cmd = [go, 'build', '-buildmode=pie', '-v'] - vcs_rev = args.vcs_rev or get_vcs_rev() - ld_flags: List[str] = [] - binary_data_flags = [f"-X kitty.VCSRevision={vcs_rev}"] diff --git a/kitty-0.31.0.tar.gz b/kitty-0.31.0.tar.gz deleted file mode 100644 index a56f044..0000000 --- a/kitty-0.31.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d1fa72c9d16eedec43ba99de9f1ad511c8246cbe4e70dd1f9d865ef72984829d -size 7988535 diff --git a/kitty-0.32.0.tar.gz b/kitty-0.32.0.tar.gz new file mode 100644 index 0000000..c40f1c6 --- /dev/null +++ b/kitty-0.32.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e55eb21ae9fa594a71c0d0ae847f5479ab4a8b00f8a76a22f3e16c42a513f9da +size 8005416 diff --git a/kitty.changes b/kitty.changes index 3357fbf..81c6a69 100644 --- a/kitty.changes +++ b/kitty.changes @@ -1,3 +1,45 @@ +------------------------------------------------------------------- +Fri Jan 19 17:15:25 UTC 2024 - Scott Bradnick + +- i586 builds fail with -fcf-protection=full (seems to be default); + setting to -fcf-protection=none with CFLAGS export + +------------------------------------------------------------------- +Fri Jan 19 14:35:25 UTC 2024 - Scott Bradnick + +- Removing go-buildmode-pie.diff and optional-disable-docs.diff; replacing + with buildmode-and-skip_docs.diff which should be an easier path going + forward to disabling 'make docs' from setup.py +- Update to 0.32.0: + * Conditional mappings depending on the state of the focused window + * Support for Modal mappings such as in modal editors like vim + * A new option notify_on_cmd_finish to show a desktop notification + when a long running command finishes (#6817) + * A new action send_key to simplify mapping key presses to other + keys without needing send_text + * Allow focusing previously active OS windows via nth_os_window (#7009) + * Wayland: Fix a regression in the previous release that broke copying + to clipboard under wl-roots based compositors in some circumstances (#6890) + * macOS: Fix some combining characters not being rendered (#6898) + * macOS: Fix returning from full screen via the button when the titlebar + is hidden not hiding the buttons (#6883) + * macOS: Fix newly created OS windows not always appearing on the + "active" monitor (#6932) + * Font fallback: Fix the font used to render a character sometimes dependent + on the order in which characters appear on screen (#6865) + * panel kitten: Fix rendering with non-zero margin/padding in + kitty.conf (#6923) + * kitty keyboard protocol: Specify the behavior of the modifier bits during + modifier key events (#6913) + * Wayland: Enable support for the new cursor-shape protocol so that the + mouse cursor is always rendered at the correct size in compositors that + support this protocol (#6914) + * GNOME Wayland: Fix remembered window size smaller than actual size (#6946) + * Mouse reporting: Fix incorrect position reported for windows with + padding (#6950) + * Fix focus_visible_window not switching to other window in stack layout + when only two windows are present (#6970) + ------------------------------------------------------------------- Wed Nov 8 15:19:32 UTC 2023 - Scott Bradnick diff --git a/kitty.spec b/kitty.spec index 55cf6dd..bc1029b 100644 --- a/kitty.spec +++ b/kitty.spec @@ -1,7 +1,7 @@ # # spec file for package kitty # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2024 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,7 +19,7 @@ # sphinx_copybutton not in Factory %bcond_with docs Name: kitty -Version: 0.31.0 +Version: 0.32.0 Release: 0 Summary: A GPU-based terminal emulator License: GPL-3.0-only @@ -28,12 +28,7 @@ URL: https://github.com/kovidgoyal/kitty Source: https://github.com/kovidgoyal/kitty/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz Source1: vendor.tar.gz Source2: kitty-rpmlintrc -# PATCH-FIX-OPENSUSE optional-disable-docs.diff -- Optionally disable building documentation files -Patch0: optional-disable-docs.diff -# PATCH-FIX-OPENSUSE fix-librsync-leap.diff -- Fix for Leap, as librsync header is missing the stdio.h header for FILE* -# Seems ./kittens/transfer/rsync.c is gone -#Patch1: fix-librsync-leap.diff -Patch2: go-buildmode-pie.diff +Patch0: buildmode-and-skip_docs.diff BuildRequires: ImageMagick-devel BuildRequires: Mesa-libGL-devel BuildRequires: fdupes @@ -49,7 +44,6 @@ BuildRequires: libcanberra-devel BuildRequires: liblcms2-devel BuildRequires: libpng16-compat-devel BuildRequires: librsync-devel -#BuildRequires: libwayland-egl-devel BuildRequires: libxkbcommon-devel BuildRequires: libxkbcommon-x11-devel BuildRequires: ncurses-devel @@ -112,8 +106,6 @@ shell-integration [bash,fish,zsh] file(s) for the Kitty terminal; this package c #%%autosetup -p1 -a 1 %setup -a 1 %patch0 -#%%patch1 -p1 -%patch2 %if 0%{?suse_version} > 1500 find . -type f -exec sed -i 's@#!/usr/bin/env python3$@#!%{_bindir}/python3@' {} + @@ -145,6 +137,10 @@ find . -type f -exec sed -i 's@#!/usr/bin/env python$@#!%{_bindir}/python3.9@' { #export CFLAGS="${CFLAGS:-%%optflags} -Wno-error=switch" #export CXXFLAGS="${CXXFLAGS:-%%optflags} -Wno-error=switch" # +%ifarch i586 +export CFLAGS="${CFLAGS:-%optflags} -fcf-protection=none" +%endif +# %if 0%{?suse_version} > 1500 python3 \ %else @@ -158,13 +154,7 @@ python3.9 -B \ %endif %endif %endif - setup.py --verbose \ -%if !%{with docs} - --no-docs \ -%endif - linux-package \ - --prefix %{buildroot}%{_prefix} \ - --libdir-name %{_lib} +setup.py --verbose linux-package --prefix %{buildroot}%{_prefix} --libdir-name %{_lib} %fdupes %{buildroot}%{_libdir}/%{name} diff --git a/optional-disable-docs.diff b/optional-disable-docs.diff deleted file mode 100644 index e1de347..0000000 --- a/optional-disable-docs.diff +++ /dev/null @@ -1,52 +0,0 @@ ---- setup.py.smb 2023-09-21 01:30:53.606748707 -0400 -+++ setup.py 2023-09-21 01:36:16.627212417 -0400 -@@ -143,6 +143,7 @@ - verbose: int = 0 - sanitize: bool = False - prefix: str = './linux-package' -+ no_docs: bool = False - dir_for_static_binaries: str = 'build/static' - skip_code_generation: bool = False - clean_for_cross_compile: bool = False -@@ -1149,12 +1150,13 @@ - invalidation_mode=py_compile.PycInvalidationMode.UNCHECKED_HASH, ddir='') - - --def create_linux_bundle_gunk(ddir: str, libdir_name: str) -> None: -- if not os.path.exists('docs/_build/html'): -- make = 'gmake' if is_freebsd else 'make' -- run_tool([make, 'docs']) -- copy_man_pages(ddir) -- copy_html_docs(ddir) -+def create_linux_bundle_gunk(ddir: str, libdir_name: str, no_docs=False) -> None: -+ if not no_docs: -+ if not os.path.exists('docs/_build/html'): -+ make = 'gmake' if is_freebsd else 'make' -+ run_tool([make, 'docs']) -+ copy_man_pages(ddir) -+ copy_html_docs(ddir) - for (icdir, ext) in {'256x256': 'png', 'scalable': 'svg'}.items(): - icdir = os.path.join(ddir, 'share', 'icons', 'hicolor', icdir, 'apps') - safe_makedirs(icdir) -@@ -1536,7 +1538,7 @@ - if not for_freeze and not bundle_type.startswith('macos-'): - build_static_kittens(args, launcher_dir=launcher_dir) - if not is_macos: -- create_linux_bundle_gunk(ddir, args.libdir_name) -+ create_linux_bundle_gunk(ddir, args.libdir_name, args.no_docs) - - if bundle_type.startswith('macos-'): - create_macos_bundle_gunk(ddir, for_freeze, args) -@@ -1640,6 +1642,12 @@ - help='Where to create the linux package' - ) - p.add_argument( -+ '--no-docs', -+ default=Options.no_docs, -+ action='store_true', -+ help='Disable building documentation when creating the linux package' -+ ) -+ p.add_argument( - '--dir-for-static-binaries', - default=Options.dir_for_static_binaries, - help='Where to create the static kitten binary' diff --git a/vendor.tar.gz b/vendor.tar.gz index db45def..816a028 100644 --- a/vendor.tar.gz +++ b/vendor.tar.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6d18b4949c985c8f096236d9e8945cb223d9016c030317f511352c3f5422a27e -size 2584971 +oid sha256:f8706067f86259ec99104325af4dcd44d6482342181e56341478f78c8b35bf03 +size 2590933