# How to setup chruby for fish shell instead of regular bash/zsh

**URL:** <https://talk.jekyllrb.com/t/how-to-setup-chruby-for-fish-shell-instead-of-regular-bash-zsh/7390>\
**Category:** Help\
**Created:** [June 4, 2022, 4:51am UTC](https://talk.jekyllrb.com/t/how-to-setup-chruby-for-fish-shell-instead-of-regular-bash-zsh/7390 "2022-06-04T04:51:41Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![KingRichard](https://avatars.discourse-cdn.com/v4/letter/k/58956e/32.png) [@KingRichard](https://talk.jekyllrb.com/u/KingRichard)\
**Post date:** [June 4, 2022, 4:51am UTC](https://talk.jekyllrb.com/t/how-to-setup-chruby-for-fish-shell-instead-of-regular-bash-zsh/7390/1 "2022-06-04T04:51:41Z")

</div>

I did install chruby using brew which is easily done. However, I cant/fail to input

```auto
echo "source $(brew --prefix)/opt/chruby/share/chruby/chruby.sh" >> ~/.zshrc
echo "source $(brew --prefix)/opt/chruby/share/chruby/auto.sh" >> ~/.zshrc
echo "chruby ruby-3.1.1" >> ~/.zshrc

```

and keep on getting an error. I believe this need to be implemented on `fish.config` ?

Anyone can help?

---

<div class="post-metadata">

**Author:** ![avillela](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.jekyllrb.com/avillela/32/4698_2.png) [@avillela](https://talk.jekyllrb.com/u/avillela)\
**Post date:** [June 8, 2022, 3:46pm UTC](https://talk.jekyllrb.com/t/how-to-setup-chruby-for-fish-shell-instead-of-regular-bash-zsh/7390/2 "2022-06-08T15:46:15Z")

</div>

I just ran into the same issue. Here’s how to solve it:

You have to change things around a bit for Fish. First, you can’t use chruby from homebrew, because it uses `.sh` scripts which don’t play nice inside `config.fish`. This is what you need to do:

```bash
brew install chruby-fish ruby-install

echo "source "(brew --prefix)"/Cellar/chruby-fish/0.8.2/share/chruby/chruby.fish" >> ~/.config/fish/config.fish
echo "source "(brew --prefix)"/Cellar/chruby-fish/0.8.2/share/chruby/auto.fish" >> ~/.config/fish/config.fish
echo "chruby ruby-3.1.2" >> ~/.config/fish/config.fish

source ~/.config/fish/config.fish

```

> NOTE: The version of Ruby is newer than that’s in the Jekyll docs. The one that homebrew installed for me was `3.1.2`. You can find out for sure by running `chruby`.

---

<div class="post-metadata">

**Author:** ![JenoDK](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.jekyllrb.com/jenodk/32/5107_2.png) [@JenoDK](https://talk.jekyllrb.com/u/JenoDK)\
**Post date:** [February 10, 2023, 3:58pm UTC](https://talk.jekyllrb.com/t/how-to-setup-chruby-for-fish-shell-instead-of-regular-bash-zsh/7390/3 "2023-02-10T15:58:26Z")

</div>

For a newer version of chruby-fish the location of these files changed, I changed it to

```auto
brew install chruby-fish ruby-install

echo "source "(brew --prefix)"/Cellar/chruby-fish/1.0.0/share/fish/vendor_functions.d/chruby.fish" >> ~/.config/fish/config.fish
echo "source "(brew --prefix)"/Cellar/chruby-fish/1.0.0/share/fish/vendor_conf.d/chruby_auto.fish" >> ~/.config/fish/config.fish
echo "chruby ruby-3.1.3" >> ~/.config/fish/config.fish

source ~/.config/fish/config.fish

```

ruby-3.1.3 being the version that is now recommended in the Jekyll docs
