Make neovim wrapper .desktop optional

I doubt there are any conventions about this specific thing since it is such an obscure request. So the decision whether to accept a PR for this feature would fall to the maintainers of the package.

Personally, I would consider the costs compared to benefits (with alternatives in mind) and reject it:

Costs

  • Added complexity to the package expression.
  • People might disable the launcher not realizing that it would also break file associations.

Benefits

  • ¿One? user’s non-critical (purely cosmetic) use case would be satisfied.

Alternatives

  • User can ignore the launcher or move it to a separate screen.

  • User can do something like the following in their NixOS configuration to hide the launcher from the Shell:

    { config, lib, pkgs, ... }:
    {
      environment.systemPackages = [
        (lib.hiPrio (pkgs.runCommand "nvim.desktop-hide" { } ''
          mkdir -p "$out/share/applications"
          cat "${config.programs.neovim.finalPackage}/share/applications/nvim.desktop" > "$out/share/applications/nvim.desktop"
          echo "Hidden=1" >> "$out/share/applications/nvim.desktop"
        ''))
      ];
    }
    

    Or use NoDisplay instead of Hidden if you want file associations to keep working.

  • Use some Menu editor app to do the same as above non-declaratively.

7 Likes