My best guess is either there is something odd in whatever you are using to launch konsole or you have something in the fish startup that is launching bash.
How do I rectify the same? It’s a fresh install of the OS and I’ve tried reinstalling fish multiple times. I’m able to launch it using the bash shell and it works as expected in that manner
Check your konsole settings and see what its run settings are, and try a different terminal emulator to see if it’s limited to konsole.
Then, provide more details about how you installed fish in the first place, what changes you have made (e.g. did you import any configuration files?), and what else you have tried.
It might be a good idea to leave your user’s shell as bash (with chsh) and just have /bin/fish launched by Konsole. You’re presumably going to use Konsole for 99% of your terminal work, so it shouldn’t make a big difference in the quality of life.
However, when you drop to TTY to do some maintenance, or if something broke, fish’s non-compliance with POSIX might give you a hard time (I haven’t tried fish so I can’t know for sure). In any case, if you’re asking for help, people are going to give you bash commands, and you don’t want to be wrestling with some slippery fish when you’re in a situation like that.
zsh could be a happy medium perhaps? It’s quite “friendly” like fish, but pretty much posix-compliant and the commands are the same as bash as far as I have found so far. I did use fish for a while but had to drop into bash quite often. With zsh that hasn’t been an issue and if people do give me bash commands they have been compatible.
It doesn’t matter, really. You can use whatever shell you want for your interactive sessions in your favourite terminal emulator. You can use different terminal emulators each with a different shell. Just configure the shell in your terminal emulator settings.
The point is that it does not have to be your user’s shell as specified by the chsh command, so that when you drop to a TTY, it’s always Bash, which is the standard, default shell on any Arch-based distro, so nothing unexpected can happen.
That’s how I do it, I have Bash set as my user’s shell (if you were to look at my /etc/passwd file, you’d see /bin/bash next to my username), but I configured Konsole, my preferred terminal emulator, to launch Zsh, my preferred shell. I live in Zsh 99.9% of the time. I never use the TTY unless my DE is broken for some reason.
In fact, the only time I actually use Bash in an interactive session is through SSH, and that is also how I prefer it.