Kitty brings its own terminfo file that is installed when installing kitty. However, all servers that you ssh into complain that xterm-kitty is unknown. The kitty packaging guide (https://sw.kovidgoyal.net/kitty/build.html#note-for-linux-macos-packagers) recommends to create two packages, one that only provide the terminfo file. For GUI-less servers this would be the right solution, I guess. See also https://sw.kovidgoyal.net/kitty/faq.html#i-get-errors-about-the-terminal-being-unknown-or-opening-the-terminal-failing-when-sshing-into-a-different-computer
That means it should be added to ncurses.
(In reply to gerion from comment #0) > However, all servers that you ssh into complain that xterm-kitty is unknown. That problem will be solved in a couple of years, then, assuming people ever upgrade ncurses. :-)
If ncurses upstream is updated with this and that seems not to be possible: https://github.com/kovidgoyal/kitty/issues/879 However, on my own servers I could install kitty-terminfo, if this package would exist.
Hmm, have not read far enough, there seems to be some support with ncurses, but not in a consistent way.
kitty terminfo was added to ncurses upstream https://lists.gnu.org/archive/html/bug-ncurses/2018-10/msg00024.html not sure when it get released, can be a loooong time (years). alacritty is in same situation, but it works with and without terminfo, when terminfo files are not installed it will just use xterm-256color on localhost and remotely. some info here https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7683342c9957081e3c4775facfce56078ea587fa I don't use kitty, how it behaves with TERM=xterm-256color ? if you set it before ssh it may work fine, alacritty does.
The problem as I get it is that kitty upstream provides a terminfo where it is named xterm-kitty and also names itself in this way and ncurses provides a terminfo where kitty is named only kitty.
Update, now, the ncurses "kitty" terminfo is stable in Gentoo. However, the description seems to be incomplete: https://github.com/neovim/neovim/issues/11973 So please package a kitty-terminfo (or a useflag for kitty that installs only the terminfo file).
I think that a correct terminfo file should be added to ncurses instead of adding a new package just for the xterm-kitty terminfo file. The main problem I see with making a new ebuild for kitty-terminfo is that, as stated in the packaging guide (https://sw.kovidgoyal.net/kitty/build.html#note-for-linux-macos-packagers), the installation of the terminfo file requires the execution of: $ python3 setup.py linux-package And then the terminfo file would be located under "linux-package/share/terminfo", which means that an ebuild for kitty-terminfo would require the user to compile the whole terminal emulator just to install the terminfo file after that.
Created attachment 618046 [details, diff] create-only-terminfo.patch (In reply to Pablo Orduna from comment #8) > I think that a correct terminfo file should be added to ncurses instead of > adding a new package just for the xterm-kitty terminfo file. In an ideal world, yes. However, kitty and ncurses seem to disagree about the specific file. The ncurses file uses another terminal name (ok, one can fix it when setting the term config option of kitty) and propose other features of kitty, only fixable with an update of ncurses. Kitty upstream recommends installing the terminfo file. I think for the user this is a valid workaround until ncurses and kitty agreed about the file. > The main problem I see with making a new ebuild for kitty-terminfo is that, > as stated in the packaging guide > (https://sw.kovidgoyal.net/kitty/build.html#note-for-linux-macos-packagers), > the installation of the terminfo file requires the execution of: > $ python3 setup.py linux-package > > And then the terminfo file would be located under > "linux-package/share/terminfo", which means that an ebuild for > kitty-terminfo would require the user to compile the whole terminal emulator > just to install the terminfo file after that. You are right, see attached patch (a little bit quick and dirty, this should be done upstream): ./setup.py linux-terminfo --prefix $PWD/install
I see, that's much better. Thank you very much! I have proposed a pull request to include it as a separate package
Thank you. Feel free to bring the patch to kitty upstream :). There would be the right place for it.
Thank you, but I find it quite unintuitive to install kitty and not getting a functional terminal after that. Other said: kitty is unusable without the terminfo file. Can you please either make kitty installation like before and an exclude with kitty-terminfo (that is the package for GUI-less server installations) or make kitty hard depend on kitty-terminfo?
(In reply to gerion from comment #12) > Thank you, but I find it quite unintuitive to install kitty and not getting > a functional terminal after that. Other said: kitty is unusable without the > terminfo file. > > Can you please either make kitty installation like before and an exclude > with kitty-terminfo (that is the package for GUI-less server installations) > or make kitty hard depend on kitty-terminfo? I second this. I just rebooted after running upgrades and was more than a bit shocked when my terminal was broken.
An update us already available which resolves that by including kitty-terminfo as a dependency. Sorry for the inconvenience
I have opened an upstream bug for the packaging part. While this problem is fixed for Gentoo right now, I think this is a feature that should be upstream: https://github.com/kovidgoyal/kitty/issues/2628