Change the guard statement about adding fish the list of shells to be more specific. The problem with the old version is package installations of fish install to /usr/bin/fish while source installs to /usr/local/bin/fish. The full path must be checked, otherwise it might be the case that it is just the package version of fish that is currently installed