$TERMINFO stuck on older version off kitty

I‘ve installed kitty with home-manager on Mac and since the Installation the TERMINFO env var has been stuck on an older version. I‘m having some issues with kitty and I want to make sure this is not the cause.

/nix/store/5i58fs56nqr9d6qyzlmilqrhwv3ic5dj-kitty-0.39.1/Applications/kitty.app/Contents/Resources/kitty/terminfo/kitty.terminfo

Current installed kitty version:

/nix/store/71knarmz6b6344dvqd0m39bbvnviqrix-kitty-0.44.0/Applications/kitty.app/Contents/Resources/kitty/terminfo/kitty.terminfo

Is there a way to make this auto update?

Do you also use nix-darwin? And if so, do you use HM as a system module in nix-darwin or standalone? If the latter do you update both together or only HM?

I installed HM first and later installed nix-darwin so independent. I haven‘t really used nix-darwin yet, the config is basically empty, just system.stateVersion is set.

home-manager https://github.com/nix-community/home-manager/archive/release-25.11.tar.gz
nixpkgs nixpkgs-25.11-darwin release nixpkgs-darwin-25.11pre908392.a669fd57cfdf

Do you have environment.enableAllTerminfo in your darwin config, or any mention of fish? Can you maybe share your config?

environment.enableAllTerminfo no, fish also no

Ofc, but my darwin config is literally empty except system.stateVersion = 6.

HM-config on the other hand.

# kitty.nix
{ pkgs, config, lib, ... }:

let
  isDarwin = pkgs.stdenv.hostPlatform.isDarwin;
  isLinux = pkgs.stdenv.hostPlatform.isLinux;
  bellSound = if isDarwin then
    "Error.aiff"
  else if isLinux then
    "Error.oga"
  else
    "Error.oga";
in

  
{
  programs.kitty = {
    enable = true;
    themeFile = "snazzy";
    extraConfig = ''
background_opacity 0.5
background_blur 6
#map alt+left send_text \033b
#map alt+right send_text \033f
# bell_path = ~/.config/.sounds/${bellSound}
    '';
    shellIntegration.enableZshIntegration = true;
  };
}
# sh.nix
{
  home.packages = with pkgs; [
    bat
  ];

  programs = {
#    thefuck.enable = true;

    eza = {
      enable = true;
      enableZshIntegration = true;
    };

    zoxide = {
      enable = true;
      enableZshIntegration = true;
    };

    fzf = {
      enable = true;
      enableZshIntegration = true;
    };

    bash = {
      inherit shellAliases;
      inherit sessionVariables;
     #enable = true;
      };

    zsh = {
      inherit shellAliases;
      inherit sessionVariables;
      enable = true;
      enableCompletion = true;
      autosuggestion.enable = true;
      syntaxHighlighting.enable = true;
      initContent = ''
        WORDCHARS="*?[]~=&;!#$%^(){}<>"
      '';
    };

    oh-my-posh = {
      enable = true;
      enableZshIntegration = true;
      useTheme = "powerlevel10k_rainbow";
    };
  };
}

EDIT: I‘ve left the shellAliases from the top out in sh.nix.

I did not mean fish, sorry, I meant kitty.

Then I have no idea why the shell info should diverge.

damn :downcast_face_with_sweat:
thanks anyway

So $TERMINFO should get updated with updates aswell right.

Totally depends on how it is set in the first place.

I would expect nix-darwin and HM to update it. Though to be honest, I would also expect to not see a storepath.

Does the location actually exist?

Do you set terminfo somewhere manually in your configuration? In your shells RC files?

Yeah the store for kitty39.1 still exists,.

I don’t have any config to set it actively. I also tried setting the var ti the current version, but it reverts to the old path when I reopen. So I think it must be set somewhere.

When I said “config”, I am not talking about HM and nix-darwin alone, but the entirety of possibly also imperatively managed configuration files you might have around.

Well the issue and solution is as often much simpler than I thought before.

I was actually still using the old version of kitty, I kept the old version in the dock so even tho I installed newer ones and “kitty –version” would also give me the new version I was using 39.1

It reminds me of another issue I want to solve. HM installed Applications aren‘t found with Spotlight by default or linked to the Applications folder. And I haven‘t found a solution yet, but it seems there is a new HM option for that:

targets.darwin.copyApps.enable