KITTY_DATA_START dump after second ssh onto server
imwints opened this issue · 4 comments
Similar to #6254 I have a dump of KITTY_DATA_START in the terminal after a second login in a session. This started to occur when I set my shell on the remote system to start fish
in the ~/.bashrc
, it looks the following:
[[ -x /bin/fish ]] && SHELL=/bin/fish exec fish
To Reproduce
kitty +kitten ssh <remote>
- Ctrl-D
kitty +kitten ssh <remote>
- The dump starts after the second login
Environment details
kitty 0.34.1 created by Kovid Goyal
Linux *** 6.8.7-gentoo #1 SMP Thu Apr 18 14:26:55 CEST 2024 x86_64
This is *** (Linux x86_64 6.8.7-gentoo) 16:38:25
DISTRIB_ID="Gentoo"
Running under: Wayland (kwin 6.0.4) missing: single_pixel_buffer
Frozen: False
Paths:
kitty: /usr/bin/kitty
base dir: /usr/lib64/kitty
extensions dir: /usr/lib64/kitty/kitty
system shell: /bin/bash
Loaded config files:
~/.config/kitty/kitty.conf
Config options different from defaults:
confirm_os_window_close 0
cursor_text_color None
enable_audio_bell False
font_family JetBrainsMono Nerd Font
font_features:
{'+cv02': ('+cv05',
'+cv09',
'+cv14',
'+ss04',
'+cv16',
'+cv31',
'+cv25',
'+cv26',
'+cv32',
'+cv28',
'+ss10',
'+zero',
'+onum')}
scrollback_lines 10000
shell fish
tab_bar_min_tabs 1
tab_bar_style powerline
tab_powerline_style slanted
tab_title_template {title}{' :{}:'.format(num_windows) if num_windows > 1 else ''}
undercurl_style thin-dense
wheel_scroll_multiplier 10.0
window_padding_width FloatEdges(left=3.0, top=3.0, right=3.0, bottom=3.0)
Colors:
background #32302f
color0 #665c54
color1 #ea6962
color10 #a9b665
color11 #d8a657
color12 #7daea3
color13 #d3869b
color14 #89b482
color15 #d4be98
color2 #a9b665
color3 #e78a4e
color4 #7daea3
color5 #d3869b
color6 #89b482
color7 #d4be98
color8 #928374
color9 #ea6962
cursor #a89984
foreground #d4be98
selection_background #d4be98
selection_foreground #32302f
Important environment variables seen by the kitty process:
PATH /usr/local/sbin:/usr/local/bin:/usr/bin:/opt/bin:/usr/lib/llvm/18/bin:/usr/lib/llvm/17/bin
LANG en_US.utf8
EDITOR /bin/nano
SHELL /bin/bash
DISPLAY :0
WAYLAND_DISPLAY wayland-0
USER user
XDG_CONFIG_DIRS ~/.config/kdedefaults:/etc/xdg
XDG_CURRENT_DESKTOP KDE
XDG_DATA_DIRS /usr/local/share:/usr/share
XDG_MENU_PREFIX plasma-
XDG_RUNTIME_DIR /run/user/1000
XDG_SEAT seat0
XDG_SEAT_PATH /org/freedesktop/DisplayManager/Seat0
XDG_SESSION_CLASS user
XDG_SESSION_DESKTOP KDE
XDG_SESSION_ID c2
XDG_SESSION_PATH /org/freedesktop/DisplayManager/Session1
XDG_SESSION_TYPE wayland
XDG_VTNR 2
Additional context
I have the same bash to fish setup on my local machine.
I launched kitty from the terminal like kitty --config NONE
and can reproduce the issue, however the following pops up a couple hundred times on the first console, maybe it's interesting:
[PARSE ERROR] The application is trying to use xterm's modifyOtherKeys. This is superseded by the kitty keyboard protocol: https://sw.kovidgoyal.net/kitty/keyboard-protocol/ the application should be updated to use that
I'm afraid that's not a scenario I am interested in trying to support.
Running exec replaces the process at which point there is nothing the
kitten can do anymore since it has been replaced. You can try using
python as the kitten interpreter, that might workaround it.
Thanks for the quick reply. I have troubles understanding why this occurs in the first place and how I might force python as the kitten interpreter :)
The documentation of the kitten tells you how to set its options and as
to why it happens, its because on the remote side something ran your
shell instead of the kittens remote script, which reads all that data.
So that data was left pending and ended up on your screen.
And incidentally if you want to run some non login shell on the server like fish the correct way to do it is to set the login_shell option for the ssh kitten, then it will do it for you.