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
Runchard
c5cb4f9e69
do not use clang option -march=native on Apple Silicon
...
Apple Silicon arm64-apple-darwin clang do not support `-march` option.
2020-12-04 21:07:19 +08:00
Luflosi
3335f8602b
Allow reading some build system flags as environment variables
2020-10-29 12:20:11 +01:00
Luflosi
e343c9445c
Creating a temporary directory is not actually required
...
While developing the previous PR (https://github.com/kovidgoyal/kitty/pull/3043 ), I was using more compiler command line arguments, one of which was `-MMD`. This caused the .d file to be created. Without this argument, there is no need to create a temporary directory.
2020-10-19 13:08:32 +02:00
Kovid Goyal
c73e374f1a
Remove unneeded space
2020-10-19 16:02:49 +05:30
Kovid Goyal
d9b292f808
Merge branch 'fix-macos-notification-api-detection' of https://github.com/Luflosi/kitty into master
2020-10-19 16:00:38 +05:30
Luflosi
46ef2f313b
macOS: Fix detection for notification API
...
For some reason it can happen that the `UserNotifications` framework exists but the `UserNotifications/UserNotifications.h` header doesn't.
Closes https://github.com/kovidgoyal/kitty/issues/3042 .
2020-10-19 12:19:51 +02:00
Luflosi
92a705c79e
Add language parameter to first_successful_compile() and test_compile()
...
This allows compiling Objective-C files.
The temporary directory is needed because clang would try to write to `/dev/null.d`, which would obviously fail.
2020-10-18 23:08:19 +02:00
Luflosi
1c4a20d86f
Remove outdated Python version check
...
The Python version is already checked at the top of the file. That check was added in 81a58186c6 .
2020-10-05 14:41:07 +02:00
Kovid Goyal
225e52b8b9
Merge branch 're-add-deprecated-macos-notifications' of https://github.com/Luflosi/kitty into master
2020-10-04 18:16:09 +05:30
Luflosi
0ae1f9906f
macOS: re-add deprecated notification API
...
The new User Notifications Framework is only available on macOS 10.14 and above, while the old NSUserNotification API is deprecated in macOS 11 (Big Sur) and will probably be removed in the future.
This commit compiles a simple test program to see if the Framework is available and then uses either the new or the old API.
2020-10-04 13:32:28 +02:00
Kovid Goyal
a5918b50f8
Merge branch 'better-build-output-for-pipes' of https://github.com/Luflosi/kitty into master
2020-10-04 15:50:39 +05:30
Luflosi
fa0374ee61
Better build system output when stdout is not a tty
...
When piping the output of `setup.py` to another program, that program cannot usually deal with escape sequences well. To fix this, output the compilation progress on new lines instead of overwriting the current line.
2020-10-04 12:02:49 +02:00
Luflosi
3ba11d08fb
Add flag to disable LTO
...
Disabling Link Time Optimization is useful for Nix on Darwin because LTO is broken there and has been for a long time, see https://github.com/NixOS/nixpkgs/pull/19312 .
This is currently worked around in the Nix package with a patch that removes the lines that add -flto to the compiler flags.
2020-10-04 10:50:42 +02:00
Kovid Goyal
ef1db6d089
macOS: Add some keys to Info.plist to allow programs running inside kitty to access protected Cocoa APIs.
2020-09-22 16:32:40 +05:30
Kovid Goyal
11942ed6dc
Fix compilation on OpenBSD
...
Fixes #2935
2020-08-24 12:05:39 +05:30
Kovid Goyal
4e3c6e52aa
macOS: Switch to the User Notifications framework
...
The current notifications framework has been deprecated in Big Sur. The new
framework only allows notifications from signed and notarized applications,
so people using kitty from HomeBrew/source are out of luck. And
notifications can only be displayed once the user grants permission. A
completely brain-dead design. Complain to Apple.
2020-08-20 13:03:00 +05:30
Kovid Goyal
ae5ceedfe9
Allow kitty to build on Big Sur
2020-08-19 20:33:14 +05:30
Kovid Goyal
5eefd41059
Add support for displaying correct colors with PNG files that contain embedded ICC color profiles
2020-08-12 10:34:16 +05:30
Kovid Goyal
6ca1b7c240
Convenience command to upload CI bundles
2020-08-12 10:30:15 +05:30
Kovid Goyal
67f60847ee
Fix the spawn test in the bypy environment
...
Required the launcher to be built since the pre-built
one was being used. Fixes #2881
2020-07-29 15:11:35 +05:30
Kovid Goyal
2cb25cf5a8
Build the launcher when freezing on macOS as well
...
Can be used by the test suite
2020-06-21 14:37:36 +05:30
Kovid Goyal
8818b5d8df
Set CFBundleAllowMixedLocalizations in the app bundle to have NSLocale.currentLocale return the correct locale on non-English systems
2020-06-18 20:16:36 +05:30
Kovid Goyal
1326532850
macOS: Notarize the kitty application
...
This required the kitty package to be moved from Frameworks to
Resources, because Apple cant codesign .pyc files and its notarization
requires everything in Frameworks to be signed. Hopefully that does not
break anything. Also removed the kitty-deref-symlink since it is not
needed anyway and was only present for backwards compatibility.
Fixes #2040
2020-06-05 22:52:30 +05:30
Kovid Goyal
e38690e8d9
Dont link against librt and libdl on OpenBSD
...
These are part of libc there
2020-05-21 11:43:55 +05:30
Luflosi
7441cefdbb
Make paths to libraries configurable at build time
2020-05-19 18:36:46 +02:00
Luflosi
ac9f8595c9
DRYer
...
Don't write `cppflags.extend()` twice.
2020-05-13 13:43:43 +02:00
Kovid Goyal
f4e82e972e
...
2020-05-01 08:10:11 +05:30
Kovid Goyal
f66dbf111d
Pass env to get_vcs_revs()
2020-05-01 08:03:31 +05:30
Kovid Goyal
0547102bdd
Fix #2468
2020-03-24 18:33:32 +05:30