I also planning to use it for development. On my PC I get used to Fish shell and usually use it instead of Bash. I can install it on Steam Deck and set it to the default shell, but after a system update it will be wiped. I can create a script and run it after each update, will I be able to login if my user points to /usr/bin/fish that doesn't exist in the system?..
I don't have an answer for your specific question (you can easily find out testing such a scenario on docker on your personal computer), but you should look into bazzite and use either brew or if you feel adventurous enough use package layering to add fish to the image.