Commit 227d0d2b6ce1
dots/config/zsh/tools/kitty.zsh
@@ -6,3 +6,12 @@ autoload -Uz -- "$KITTY_INSTALLATION_DIR"/shell-integration/zsh/kitty-integratio
kitty-integration
unfunction kitty-integration
+# WORKAROUND: kitty < 0.47.2 spawns kitten __watch_conf__ that recursively
+# watches symlink targets (e.g. nix store), exhausting inotify watches.
+# See https://github.com/kovidgoyal/kitty/issues/10102
+# Remove when Fedora ships kitty >= 0.47.2.
+if (( KITTY_PID )) && [[ ! -f /tmp/.kitty-watcher-killed-$KITTY_PID ]]; then
+ pkill -f 'kitten __watch_conf__' 2>/dev/null
+ touch /tmp/.kitty-watcher-killed-$KITTY_PID
+fi
+
home/common/desktop/kitty.nix
@@ -10,8 +10,9 @@
package = if osConfig != null then pkgs.kitty else pkgs.emptyDirectory;
shellIntegration.enableZshIntegration = false; # handled in dots/config/zsh/tools/kitty.zsh
settings = {
- # FIXME: disable until kitty >= 0.47.4 lands in Fedora (upstream #10102:
- # config watcher recursively watches $HOME, leaking inotify watches)
+ # FIXME: disable until kitty >= 0.47.2 lands in Fedora (upstream #10102:
+ # config watcher recursively watches symlink targets like /nix/store,
+ # exhausting inotify watches). Workaround in dots/config/zsh/tools/kitty.zsh.
auto_reload_config = "0";
close_on_child_death = "yes";
# font_family = "JetBrainsMono Nerd Font Mono";