Recently got first pull request to update kitty-terminfo package openwrt/packages#30876 merged. This is a guide on how I compiled kitty-terminfo.
Before compiling the package, I’ve already forked openwrt/packages repo to curbengh/openwrt-packages, created “kitty” branch and pushed the commit to the branch.
Let’s start by cloning the “openwrt/openwrt” repo and checkout the latest stable branch.
# https://openwrt.org/docs/guide-developer/toolchain/use-buildsystem
git clone https://github.com/openwrt/openwrt.git
cd openwrt
git checkout v25.12.6Update the “packages” line to point to the commit of forked repo, in my case, it’s https://github.com/curbengh/openwrt-packages.git^ba7792c8d2396eb23ec6bcf5a20876525aa3f7b8
nano feeds.conf.default
src-git packages https://github.com/curbengh/openwrt-packages.git^commit-hashUpdate and install feeds
./scripts/feeds update -a
./scripts/feeds install -aSelect a device and the relevant package to build. “Target images” can be deselected to skip building device image. Refer to firmware-selector page to find out target and subtarget name.
make menuconfig
Target System: MediaTek ARM
Subtarget: Filelogic
Target Profile: Xiaomi Mi Router AX3000T
Target Images: deselect
scroll to bottom > Utilities > Terminal > kitty-terminfo
Libraries > libncurses (automatically selected, optional if current dependency version is ok)
make defconfig download clean worldInstall build tools
# https://openwrt.org/docs/guide-developer/toolchain/single.package
make tools/install
make toolchain/installFinally, compile the package.
make package/ncurses/compile
make package/kitty-terminfo/compile
make package/indexCompiled package is available in the “bin/“ folder.