Commit Graph

452 Commits

Author SHA1 Message Date
Kovid Goyal
a01dbbdf04
Fix launcher not building universal 2022-08-01 19:03:03 +05:30
Kovid Goyal
51698dff07
... 2022-08-01 19:02:59 +05:30
Kovid Goyal
5d3e2c7111
... 2022-08-01 19:02:58 +05:30
Kovid Goyal
d4bc906c5c
Fix launcher build with sanitize 2022-08-01 19:02:58 +05:30
Kovid Goyal
09ddbbf600
Finish move of prewarm launcher into its own compilation unit 2022-08-01 19:02:58 +05:30
Kovid Goyal
7a31c7ff50
Start work on everywhere prewarm 2022-08-01 19:02:57 +05:30
Kovid Goyal
7281b9dbb1
Ensure local kitty is used when running the tests 2022-07-05 21:09:09 +05:30
Kovid Goyal
4b63ee036e
Run the test suite using the kitty binary 2022-07-05 21:05:03 +05:30
Kovid Goyal
71c902eaf8
Build the launcher with debug symbols when using --debug 2022-07-03 13:28:57 +05:30
Kovid Goyal
313136803c
DRYer 2022-06-02 10:21:34 +05:30
Kovid Goyal
56f8a06362
DRYer 2022-06-01 08:47:19 +05:30
Brian Leung
62c27b3db7
Add kitty/fontconfig.c to SPECIAL_SOURCES
Fixup of bec620a8d3.
2022-05-31 19:58:42 -07:00
Kovid Goyal
1283a2b7e5
... 2022-06-01 08:21:23 +05:30
Kovid Goyal
bec620a8d3
Fix #5154 2022-06-01 08:19:11 +05:30
Kovid Goyal
0df9a5d5c5
Fix compilation on Python 3.11
Python 3.11 deprecates the supposedly "stable API" PySys_AddXOption().
So switch to using PyConfig.xoptions instead. This means dropping
support for python 3.7 since PyConfig is not available there. So it
rolls.

Fixes #5143
2022-05-29 14:37:14 +05:30
Kovid Goyal
d3656bf7e9
Linux: Load libfontconfig at runtime to allow the binaries to work for running kittens on servers without FontConfig 2022-05-13 19:56:19 +05:30
Kovid Goyal
073eecb6bb
Also package kitty.termcap 2022-04-12 22:43:22 +05:30
Kovid Goyal
57cffc71b7
Fix building on macOS with a non-framework Python
Fixes #289
2022-04-01 07:39:54 +05:30
Kovid Goyal
fb40280d3c
Use x-shellscript in addition to x-sh
/etc/mime.types uses x-sh and file --mime-type uses x-shellscript. Sigh.
Fixes #4881
2022-03-26 07:35:42 +05:30
Kovid Goyal
441ea7d696
askpass.py should be executable 2022-03-13 14:49:36 +05:30
pagedown
0a9f8d4f6a
Add terminfo src file when packaging
ssh kitten needs to send this file.
2022-03-11 08:35:10 +08:00
Kovid Goyal
f774841ee0
More robust copying of terminfo
Dont use symlinks in the tarball, instead create them
in the bootstrap scripts, only if needed.
2022-03-10 21:08:20 +05:30
Kovid Goyal
ff01df3b16
Dont byte compile the bootstrap script during build 2022-03-06 10:54:58 +05:30
Kovid Goyal
6b681df473
Include all terminfo variants in binary bundles
Needed so that they can be transmitted over ssh easily
2022-03-03 21:24:43 +05:30
Kovid Goyal
01d866f482
Also add openable mimetypes to kitty-open.desktop 2022-02-06 20:27:50 +05:30
pagedown
73a197fcde
Add kitty-launcher.desktop to handle URL scheme for Linux 2022-02-06 19:12:57 +08:00
pagedown
007e9697c4
macOS: Add Open with kitty Service
There are still some file types that cannot be matched.
Add a standalone Open With service.
Users can configure shortcut for this service in System Preferences.
2022-02-05 23:20:19 +08:00
pagedown
9989edbe42
macOS: Add archive file type to info plist
List kitty in the Open With menu for archive files.
E.g. compressed files or disk image files
2022-02-05 23:19:33 +08:00
pagedown
206e490491
macOS: Add common URL schemes to info plist 2022-02-05 13:09:13 +08:00
Kovid Goyal
90b54c5f7f
Get build-dep working again for changes to bypy 2022-02-05 10:27:47 +05:30
Luflosi
301ca76d14
Shorten a long line
This line is getting really close to the limit of 160 characters.
2022-02-01 12:16:13 +01:00
pagedown
a22f37b919
Refactor: More f-string for tools 2022-01-29 20:14:36 +08:00
pagedown
81e7e6a356
macOS: Disable sudden termination
Since we have the quit confirmation feature, so we explicitly specify
that sudden termination is not supported.
2022-01-29 13:41:59 +08:00
pagedown
953cf26369
macOS: Fix info plist structure version
Set the InfoDictionary version explicitly, hopefully the behavior will
be unchanged when the default version is upgraded.
2022-01-29 13:37:21 +08:00
pagedown
dc61adf9d8
Refactor: More f-string 2022-01-28 19:34:13 +08:00
pagedown
9be57de4a9
macOS: List kitty in the open with menu of an arbitrary file
Allow opening files without extension name following the rules in launch
actions configuration.
2022-01-27 18:16:35 +08:00
pagedown
cc84ee9734
Refactor: Replace string concat with f-string 2022-01-27 17:57:25 +08:00
pagedown
b5ad030a14
macOS: Categorize and update bundle info plist
Allow toggling input sources using CapsLock.
Allow programs to request photo, motion, speech recognition permissions.
Add local network unicast or multicast usage description.
Remove iOS-only items.
2022-01-27 17:55:43 +08:00
pagedown
f7be4fab48
macOS: Allow mapping secure keyboard entry shortcut 2022-01-09 22:54:03 +08:00
pagedown
9ca691c0c6
macOS: Add kitty to the open with list for text files and image files 2022-01-07 19:33:29 +08:00
Kovid Goyal
420a1b018a
Fix #4448 2022-01-05 20:14:23 +05:30
Kovid Goyal
bed3d2eb50
Fix #4434 2022-01-04 23:38:58 +05:30
Kovid Goyal
d65ed5993c
New bypy CLI for export 2021-12-19 22:42:36 +05:30
Kovid Goyal
a938b01246
Build binaries for Linux ARM64 2021-12-10 12:49:58 +05:30
Kovid Goyal
8e435dff16
Update the version of Ubuntu the kitty binaries are built on to Bionic
The upgrade was needed as I couldn't get Xenial to boot in the QEMU VM.
In any case Bionic is now three years old and comes with GLIBC 2.27
released on 2018-02-01 which will be almost four years old when the next
version of kitty is released.
2021-12-09 22:28:11 +05:30
Kovid Goyal
617316e8d9
Linux: Use copy_file_range for defrag of the disk cache which should give even better performance on filesystems that support it 2021-11-24 19:42:00 +05:30
Kovid Goyal
f0e8ab8f31
Drop support for python 3.6
It is being EOLed next month (https://www.python.org/dev/peps/pep-0494/)
which is when I expect the next kitty release as well
2021-11-18 22:44:41 +05:30
Kovid Goyal
69e903a4c4
Add more type annotations 2021-10-27 11:13:28 +05:30
Kovid Goyal
9c2f96f7eb
Add more type annotations 2021-10-27 08:45:45 +05:30
Kovid Goyal
9289ebf9c9
Old python compat 2021-10-07 13:51:55 +05:30
Kovid Goyal
f4b6cc6628
Forgot the key the is_gcc cache by cc 2021-10-07 13:43:12 +05:30
Kovid Goyal
853f7cc59a
Make handling of CC more robust
Allows multi-command compilers and makes detection of gcc more robust.
Fixes #4102
2021-10-07 13:35:56 +05:30
Kovid Goyal
1b42f69119
Allow specifying extra lib dirs as well
Also use the extra include and lib dirs when detecting librsync
2021-10-06 10:23:01 +05:30
Kovid Goyal
a1b532334e
Alias for --extra-include-dirs 2021-10-06 08:08:44 +05:30
Kovid Goyal
7530bfd1a1
lang -> source_ext since it is now file extension not language name 2021-09-30 14:25:48 +05:30
Kovid Goyal
abf6a3f91d
Fix #4080 2021-09-30 14:23:19 +05:30
Kovid Goyal
a32b6d5cf5
No need for Optional 2021-09-26 12:30:08 +05:30
Kovid Goyal
3ce087a716
... 2021-09-26 12:26:21 +05:30
Kovid Goyal
15cdeef552
Cleanup test_compile a bit 2021-09-26 12:21:25 +05:30
Kovid Goyal
fe0d1034aa
Cleanup any extra files produced by clang in debug mode when test compiling 2021-09-25 17:41:55 +05:30
Kovid Goyal
2fcfa8d3eb
... 2021-09-24 12:03:51 +05:30
Kovid Goyal
558fad1630
Fix test_compile() with debug and clang on macOS 2021-09-24 08:31:16 +05:30
Kovid Goyal
76d6820af9
Do a full link test for rs_sig_args 2021-09-18 11:44:11 +05:30
Kovid Goyal
7cf73c10ac
clang needs a newline at the end of src 2021-09-18 11:16:56 +05:30
Kovid Goyal
71963aa738
Fix librsync detection on freeze builds 2021-09-18 11:10:03 +05:30
Kovid Goyal
dcc0dabe68
Specify the library in the correct place when test compiling
Needed for ancient compilers
2021-09-18 10:58:14 +05:30
Kovid Goyal
348e632dd6
Fix building on the usual ancient Linux distro suspects
Detect if librsync is new enough to have rs_sig_args
2021-09-18 10:49:46 +05:30
Kovid Goyal
6b576fcf5c
Use paths rather than flags in kitten extension definitions 2021-09-18 10:08:28 +05:30
Kovid Goyal
f0fab80f5b
Start work on rsync support for file transfers 2021-09-17 13:41:45 +05:30
Kovid Goyal
6db46850eb
Fix #3989 2021-09-02 13:05:14 +05:30
Kovid Goyal
000e1012c6
Option for packagers to easily tune shell integration 2021-08-18 10:06:08 +05:30
Kovid Goyal
bffe7aba8f
Add shell integration scripts to kitty package 2021-08-18 10:06:05 +05:30
Kovid Goyal
d55a86e39b
Cleanup icdir creation 2021-07-13 08:00:15 +05:30
Artturin
6f513f5706 linux: install a scalable icon 2021-07-13 05:10:15 +03:00
Kovid Goyal
90164dfee7
make clean should not clean bypy build artifacts 2021-06-28 06:39:12 +05:30
Kovid Goyal
057084a708
Add support for XTVERSION version reporting escape code 2021-06-14 10:20:50 +05:30
Kovid Goyal
d99e243f57
Respect --ignore-compiler-warnings when building the launcher 2021-06-10 07:48:52 +05:30
Kovid Goyal
9432f86e43
Remove no longer needed type: ignore
Looks like the type signature for runpy.run_path has finally been fixed
2021-06-09 08:30:22 +05:30
Kovid Goyal
6d7df1c5e8
Refactor configuration file parsing
Now the time for importing the kitty.config module has been halved, from
16ms from 32ms on my machine. Also, the new architecture will eventually
allow for auto generating a bunch of python-to-C boilerplate code.
2021-05-31 17:40:49 +05:30
Kovid Goyal
bef4905416
Also remove -pedantic-errors when using --ignore-compiler-warnings
Fixes #3584
2021-05-07 06:26:00 +05:30
Alexis Praga
7bd0fdf3da Freebsd: use gmake to build docs 2021-05-04 22:48:23 +02:00
Kovid Goyal
96ce33792d
Build kitty as a universal binary 2021-05-01 14:58:06 +05:30
Kovid Goyal
ae43b1565e
DRYer 2021-04-28 13:41:48 +05:30
Kovid Goyal
3206e1b12c
... 2021-04-28 13:11:59 +05:30
Kovid Goyal
93d4eca2d4
Fix kitty.conf man page being installed in incorrect location
Fixes #3543
2021-04-28 13:11:01 +05:30
Kovid Goyal
12763e19d8
Add a build argument to turn off -Werror
Fixes #3530
2021-04-24 18:32:57 +05:30
Kovid Goyal
cdbc096990
Start work on rendering text for CSDs 2021-03-29 12:15:47 +05:30
Kovid Goyal
a94b94cab0
Fix macos-freeze building everything twice 2021-03-11 13:03:45 +05:30
Kovid Goyal
f70c9842f5
macOS: Allow opening script and command
Fixes #3366
2021-03-10 21:33:29 +05:30
Kovid Goyal
bd67814485
Fix building with asan on macOS 2021-02-23 17:06:00 +05:30
Kovid Goyal
c2a924a5ea
Run all tests on the full frozen build using the frozen launcher
Much more comprehensive test coverage at the cost of slightly increasing
the frozen build size.
2021-02-19 17:57:59 +05:30
Kovid Goyal
9114bda24c
Get the new bypy based freezing process working with linux builds 2021-02-17 15:50:53 +05:30
Kovid Goyal
5a2f2767ad
Fix window icon not working on X11 with 64bits
Apparently on X11 the maximum icon size is 128x128. 256x256 is too
large for the X11 protocol because the X server unserializes the icons
using "unsigned long" which is 64 bits on Linux. So we have to use
64bits per pixel instead of 32, with 32bits padded to 0.

While there I also got rid of the kitty.rgba file replacing it with a
128x128 PNG file.

Fixes #3260
2021-01-25 20:54:19 +05:30
Kovid Goyal
714d64c417
Get type checking working with mypy 0.80
Add workaround for https://github.com/python/typeshed/issues/4964
2021-01-23 09:25:31 +05:30
Kovid Goyal
4fea7bd8ef
Fix building on systems with xkbcommon < 1.0 2021-01-17 07:22:21 +05:30
Peter Woodman
35982a9e58 Make is_arm predicate work on macos 2021-01-15 00:09:24 -05:00
Kovid Goyal
8ea589e5a3
Change blurb wording slightly 2021-01-12 20:01:44 +05:30
Kovid Goyal
1f7499e841
Detect more types of BSD 2020-12-31 10:26:15 +05:30
Kovid Goyal
4cf5bd8d70
Turn on the asserts in ringbuf for debug builds 2020-12-11 21:26:15 +05:30
Kovid Goyal
4cc58e8535
Better fix for filtering out -march=native 2020-12-04 20:59:18 +05:30