x11-terms/kitty-shell-integration: install only auto scripts in live

See bug #960075 for details, but (as far as I can tell) remotely the
auto-loaded scripts (e.g. bashrc.d) is all that should be needed from
the shell-integration directory, the rest can be kept in the main
kitty package.

Unfortunately no such location for zsh, but still install the scripts
somewhere in case users need it but do not want to install kitty.
Users can opt to resort to `kitten ssh` instead though.

This also drops completions which did not make much sense if kitty is
not also installed, besides these were incomplete and it'll be handled
hopeufully properly in the kitty package instead.

Bug: https://bugs.gentoo.org/960075
Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
This commit is contained in:
Ionen Wolkens
2025-07-16 02:22:30 -04:00
parent eadfa6eb32
commit dbf1d088e4

View File

@@ -22,22 +22,18 @@ RESTRICT="test" # intended to be ran on the full kitty package
src_compile() { :; }
src_install() {
# install the whole directory in the upstream suggested location
# for consistency (i.e. less variation between distros if someone
# ssh into Gentoo), then set symlinks to autoload where possible
# (these exit immediately if KITTY_SHELL_INTEGRATION is unset)
insinto /usr/share/kitty
doins -r shell-integration
# split from the kitty package to allow installing individually on
# remote machines and have shell integration scripts be auto-loaded
insinto /etc/bash/bashrc.d
newins shell-integration/bash/kitty.bash 90-kitty.bash
dosym -r {/usr/share/kitty/shell-integration/bash/,/etc/bash/bashrc.d/90-}kitty.bash
insinto /usr/share/fish
doins -r shell-integration/fish/vendor_conf.d
dosym -r /usr/share/{kitty/shell-integration/fish,fish}/vendor_completions.d/kitty.fish
dosym -r /usr/share/{kitty/shell-integration/fish,fish}/vendor_conf.d/kitty-shell-integration.fish
dosym -r /usr/share/{kitty/shell-integration/zsh/completions,zsh/site-functions}/_kitty
# zsh integration is handled automatically without needing to modify rc files,
# but may require user intervention depending on zsh invocation or if remote
# this is used internally by the ssh kitten and is not useful there
rm -r "${ED}"/usr/share/kitty/shell-integration/ssh || die
# unfortunately zsh currently lacks a bashrc.d equivalent, copy
# to docdir for now so users can use it manually if needed (also at
# /usr/lib*/kitty/shell-integration/zsh if kitty is installed)
docinto zsh
docompress -x /usr/share/doc/${PF}/zsh
dodoc shell-integration/zsh/{.zshenv,kitty-integration,kitty.zsh}
}