I am struggling to install the fish shell on OS X El Capitan.

My user structure is setup so I have an administrator account and a standard account. The standard account is the one that I use and simply have the admin account for security reasons. However, I am unable to install fish on my standard account. It is installed perfectly on my admin account, but when I change the shell from bash to fish, I get the following error in iTerm2:

A session ended very soon after starting. Check that the command in profile "my_admin_username" is correct.

In the shell, I am also receiving the following error:

login: /usr/local/bin/fish: Permission denied

Now, the above would make sense, as I am only able to use fish when suing, but I have been unsuccessful thus far in setting fish up correctly to work across all of my accounts.

This is a clean, recent install so I am not sure what is causing this error. I can revert to bash easily, but I really want to be able to use fish.

Any help is greatly appreciated.

  • What are the permissions of /usr/local/bin/fish? The fish maintainer is active on stackoverflow, so you might want to ask there if you don't get any good answers here. – glenn jackman Oct 9 '15 at 20:35
  • -rwxr-xr-x 1 root wheel 743892 Jul 12 03:34 fish – badfilms Oct 9 '15 at 20:42

El Capitan introduced a feature called System Integrity Protection that restricts even the root user from performing certain actions on some system directories, /usr/local included.

this might be relevant.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.