From be6cdf1f8ef223b46781371d0d3da1cf9663c3f1 Mon Sep 17 00:00:00 2001 From: Ayo Date: Sat, 20 Jun 2026 09:40:09 +0200 Subject: [PATCH 01/11] feat: add linux-install-deps script --- .gitignore | 3 +++ linux-install-deps.sh | 19 +++++++++++++++++++ 2 files changed, 22 insertions(+) create mode 100644 linux-install-deps.sh diff --git a/.gitignore b/.gitignore index 23e1865f0..69e5d3181 100644 --- a/.gitignore +++ b/.gitignore @@ -31,3 +31,6 @@ bypy/b bypy/virtual-machines.conf _codeql_detected_source_root +*~ +*swo +*swp diff --git a/linux-install-deps.sh b/linux-install-deps.sh new file mode 100644 index 000000000..40af65363 --- /dev/null +++ b/linux-install-deps.sh @@ -0,0 +1,19 @@ +## Debian +sudo apt update && sudo apt install -y \ + liblcms2-dev \ + libfontconfig-dev \ + libssl-dev \ + libpython3-dev \ + libxxhash-dev \ + libsimde-dev \ + libcairo2-dev \ + ## x11 dev libraries \ + libdbus-1-dev \ + libxcursor-dev \ + libxrandr-dev \ + libxi-dev \ + libxinerama-dev \ + libgl1-mesa-dev \ + libxkbcommon-x11-dev \ + libfontconfig-dev \ + libx11-xcb-dev From f9071359f0a049669e0c9c5e54ba6158591c16fe Mon Sep 17 00:00:00 2001 From: Ayo Date: Sat, 20 Jun 2026 09:44:58 +0200 Subject: [PATCH 02/11] chore: add husky postcommit --- .gitignore | 1 + .husky/post-commit | 3 +++ package.json | 21 +++++++++++++++++++++ pnpm-lock.yaml | 24 ++++++++++++++++++++++++ 4 files changed, 49 insertions(+) create mode 100644 .husky/post-commit create mode 100644 package.json create mode 100644 pnpm-lock.yaml diff --git a/.gitignore b/.gitignore index 69e5d3181..ed993f714 100644 --- a/.gitignore +++ b/.gitignore @@ -34,3 +34,4 @@ _codeql_detected_source_root *~ *swo *swp +node_modules diff --git a/.husky/post-commit b/.husky/post-commit new file mode 100644 index 000000000..a98224c5b --- /dev/null +++ b/.husky/post-commit @@ -0,0 +1,3 @@ +echo "post-commit..." +git push gh +git push sh diff --git a/package.json b/package.json new file mode 100644 index 000000000..915fe625f --- /dev/null +++ b/package.json @@ -0,0 +1,21 @@ +{ + "name": "kitty", + "version": "1.0.0", + "description": "", + "main": "index.js", + "directories": { + "doc": "docs" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "https://git.ayo.run/ayo/kitty" + }, + "author": "Ayo Ayco", + "license": "MIT", + "devDependencies": { + "husky": "^9.1.7" + } +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 000000000..a177305d1 --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,24 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + devDependencies: + husky: + specifier: ^9.1.7 + version: 9.1.7 + +packages: + + husky@9.1.7: + resolution: {integrity: sha512-5gs5ytaNjBrh5Ow3zrvdUUY+0VxIuWVL4i9irt6friV+BqdCfmV11CQTWMiBYWHbXhco+J1kHfTOUkePhCDvMA==} + engines: {node: '>=18'} + hasBin: true + +snapshots: + + husky@9.1.7: {} From 7e8e5fcb12469615798cb9549536a622d7ac1199 Mon Sep 17 00:00:00 2001 From: Ayo Date: Sat, 20 Jun 2026 10:11:32 +0200 Subject: [PATCH 03/11] chore: make readme markdown --- README.asciidoc | 16 ---------------- README.md | 18 ++++++++++++++++++ 2 files changed, 18 insertions(+), 16 deletions(-) delete mode 100644 README.asciidoc create mode 100644 README.md diff --git a/README.asciidoc b/README.asciidoc deleted file mode 100644 index f4ba68a5e..000000000 --- a/README.asciidoc +++ /dev/null @@ -1,16 +0,0 @@ -= kitty - the fast, feature-rich, cross-platform, GPU based terminal - -If you live in the terminal, *kitty* is made for **you**! - -See https://sw.kovidgoyal.net/kitty/[the kitty website]. - -image:https://github.com/kovidgoyal/kitty/workflows/CI/badge.svg["Build status", link="https://github.com/kovidgoyal/kitty/actions?query=workflow%3ACI"] - -https://sw.kovidgoyal.net/kitty/faq/[Frequently Asked Questions] - -To ask other questions about kitty usage, use either the https://github.com/kovidgoyal/kitty/discussions/[discussions on GitHub] or the -https://www.reddit.com/r/KittyTerminal[Reddit community] - -Packaging status in various repositories: - -image:https://repology.org/badge/vertical-allrepos/kitty-terminal.svg?columns=3&header=kitty["Packaging status", link="https://repology.org/project/kitty-terminal/versions"] diff --git a/README.md b/README.md new file mode 100644 index 000000000..fb7325dce --- /dev/null +++ b/README.md @@ -0,0 +1,18 @@ +> [!Note] +> This is a fork of the Kitty terminal emulator: https://github.com/kovidgoyal/kitty + +# kitty - the fast, feature-rich, cross-platform, GPU based terminal + +If you live in the terminal, *kitty* is made for **you**! + +See [the kitty website](https://sw.kovidgoyal.net/kitty/). + +[!["Build status"](https://github.com/kovidgoyal/kitty/workflows/CI/badge.svg)]("https://github.com/kovidgoyal/kitty/actions?query=workflow%3ACI") + +[Frequently Asked Questions](https://sw.kovidgoyal.net/kitty/faq/) + +To ask other questions about kitty usage, use either the [discussions on GitHub](https://github.com/kovidgoyal/kitty/discussions) or the [Reddit community](https://www.reddit.com/r/KittyTerminal) + +Packaging status in various repositories: + +[!["Packaging status"](https://repology.org/badge/vertical-allrepos/kitty-terminal.svg?columns=3&header=kitty)]("https://repology.org/project/kitty-terminal/versions") From d934a1ebf326c689b64eb9c34154aeaa3435e7a9 Mon Sep 17 00:00:00 2001 From: Ayo Date: Sat, 20 Jun 2026 10:22:29 +0200 Subject: [PATCH 04/11] chore: add husky prepare script --- package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 915fe625f..62bec4a04 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,8 @@ "doc": "docs" }, "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" + "test": "echo \"Error: no test specified\" && exit 1", + "prepare": "husky" }, "repository": { "type": "git", From 944ab76b49fff322899801bb97d926c8950ecefb Mon Sep 17 00:00:00 2001 From: Ayo Date: Sat, 20 Jun 2026 10:28:27 +0200 Subject: [PATCH 05/11] feat(installer): update debian deps installation script --- linux-install-deps.sh => install-linux-debian-deps.sh | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) rename linux-install-deps.sh => install-linux-debian-deps.sh (72%) diff --git a/linux-install-deps.sh b/install-linux-debian-deps.sh similarity index 72% rename from linux-install-deps.sh rename to install-linux-debian-deps.sh index 40af65363..ccfc73965 100644 --- a/linux-install-deps.sh +++ b/install-linux-debian-deps.sh @@ -1,5 +1,8 @@ -## Debian -sudo apt update && sudo apt install -y \ +## Update package repos +sudo apt update + +## Build deps +sudo apt install -y \ liblcms2-dev \ libfontconfig-dev \ libssl-dev \ @@ -7,7 +10,9 @@ sudo apt update && sudo apt install -y \ libxxhash-dev \ libsimde-dev \ libcairo2-dev \ - ## x11 dev libraries \ + +## X11 development deps +sudo apt install -y \ libdbus-1-dev \ libxcursor-dev \ libxrandr-dev \ From aed4f629f08edc3aac2a4cc50cbaec792eee09ef Mon Sep 17 00:00:00 2001 From: Ayo Date: Sat, 20 Jun 2026 10:31:23 +0200 Subject: [PATCH 06/11] feat: add launch script --- launch.sh | 1 + 1 file changed, 1 insertion(+) create mode 100644 launch.sh diff --git a/launch.sh b/launch.sh new file mode 100644 index 000000000..dfa12a0ee --- /dev/null +++ b/launch.sh @@ -0,0 +1 @@ +kitty/launcher/kitty From c63a52b79447ab98e19c4f12d857844d8aa89720 Mon Sep 17 00:00:00 2001 From: Ayo Date: Sat, 20 Jun 2026 12:00:28 +0200 Subject: [PATCH 07/11] chore: update CONTRIBUTING for commands & key files --- CONTRIBUTING.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e00ccbd34..2d7440bd1 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -28,3 +28,18 @@ tests as well (see the `kitty_tests/` sub-directory for existing tests, which can be run with `./test.py`). That's it. + +### Commands + +- **Build:** `./dev.sh build` or `python3 setup.py build --debug` +- **Tests:** `./test.py` (or `--module ` for specific) +- **Type check:** `./test.py type-check` (mypy) +- **Linting:** `ruff check .` for Python, `gofmt/gofmt` for Go +- **Regenerate config types:** `./gen-config.py` after editing `definition.py` +- **CI runs:** GCC + Clang on Python 3.11/3.12/3.13 (ASAN enabled), ruff linting, mypy, go vet + +### Key files to know first when working on the project +- `boss.py` — central runtime controller +- `screen.c` — VT terminal emulation core +- `kitty/options/definition.py` — all config options in one place (~3700 lines) +- `child-monitor.c` — child process/PTY management From 19202959021e94206bfdadb950aeb5b0dd96cab3 Mon Sep 17 00:00:00 2001 From: Ayo Date: Sat, 20 Jun 2026 13:13:32 +0200 Subject: [PATCH 08/11] feat: make launch executable --- launch.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 launch.sh diff --git a/launch.sh b/launch.sh old mode 100644 new mode 100755 From 33f1fa77d9cb83f4c0f75cde13abb6d522027d8e Mon Sep 17 00:00:00 2001 From: Ayo Date: Sat, 20 Jun 2026 13:37:34 +0200 Subject: [PATCH 09/11] feat: launch from correct directory --- launch.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/launch.sh b/launch.sh index dfa12a0ee..ce95f50c8 100755 --- a/launch.sh +++ b/launch.sh @@ -1 +1 @@ -kitty/launcher/kitty +$(dirname "$0")/kitty/launcher/kitty From aaa0ae793f58d7af7b6c02abc9f57aa87b7a128d Mon Sep 17 00:00:00 2001 From: Ayo Date: Sun, 21 Jun 2026 11:54:36 +0200 Subject: [PATCH 10/11] chore: add quick start command --- README.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/README.md b/README.md index fb7325dce..315099138 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,15 @@ # kitty - the fast, feature-rich, cross-platform, GPU based terminal +```bash +git clone https://ayco.io/g/kitty \ + && cd kitty \ + && ./dev.sh build \ + && ./launch.sh +``` + +## Background + If you live in the terminal, *kitty* is made for **you**! See [the kitty website](https://sw.kovidgoyal.net/kitty/). From b0a4ee89550147d206b9c54da55b29ae0414cb1d Mon Sep 17 00:00:00 2001 From: Ayo Date: Mon, 22 Jun 2026 21:14:45 +0200 Subject: [PATCH 11/11] chore: add linux debian deps install --- README.md | 6 ++++++ install-linux-debian-deps.sh => install-if-linux-debian.sh | 4 ++++ 2 files changed, 10 insertions(+) rename install-linux-debian-deps.sh => install-if-linux-debian.sh (90%) mode change 100644 => 100755 diff --git a/README.md b/README.md index 315099138..5dab64764 100644 --- a/README.md +++ b/README.md @@ -3,13 +3,19 @@ # kitty - the fast, feature-rich, cross-platform, GPU based terminal +## Installation + +Copy the following to your terminal: + ```bash git clone https://ayco.io/g/kitty \ && cd kitty \ + && ./install-if-linux-debian.sh \ && ./dev.sh build \ && ./launch.sh ``` + ## Background If you live in the terminal, *kitty* is made for **you**! diff --git a/install-linux-debian-deps.sh b/install-if-linux-debian.sh old mode 100644 new mode 100755 similarity index 90% rename from install-linux-debian-deps.sh rename to install-if-linux-debian.sh index ccfc73965..442f3c482 --- a/install-linux-debian-deps.sh +++ b/install-if-linux-debian.sh @@ -1,3 +1,5 @@ +if [[ "$OSTYPE" == "linux-gnu"* ]]; then + ## Update package repos sudo apt update @@ -22,3 +24,5 @@ sudo apt install -y \ libxkbcommon-x11-dev \ libfontconfig-dev \ libx11-xcb-dev + +fi