are not in the search path set by the XDG_DATA_DIRS environment variable, so
applications installed by Flatpak may not appear on your desktop until the
session is restarted.
The issue is that flatpak doesn’t include config for fish. I believe this was recently fixed and will likely be added in a future release of flatpak.
In the meantime, you have two options.
You can switch your default shell back to bash or zsh and then set konsole or whatever terminal application you use to run fish.
You can manually duplicate the xdg setup stuff for fish and get it into your environment somehow.
I always recommend the former option because that way you will still be using fish interactively but your default shell will be POSIX compliant for anything that cares about that.
Change your user’s shell back to Bash with the chsh command.
Then edit your terminal emulator’s settings to run Fish.
You’ll still have Fish in your terminal emulator for interactive shell sessions, but your default shell (which you’ll never see) will be Bash. It’s never a good idea to have a non-POSIX compliant shell as your user’s default, there are things other than just flatpaks that will break.
You’re probably using Konsole, so just right click anywhere and select “Edit Current Profile…” and under "Command: " type “/bin/fish” (or wherever the executable for Fish is).
That is because your environment is missing the things that flatpak needs. Just using bash won’t help, you need to change your default shell to bash and logout and back in.