tl;dr - if you use fish shell you also need to set
bundlecommand to work properly
When I set up Jekyll on macOS using fish shell I ran into an issue that was a bit tricky to solve.
I followed the Jekyll quickstart guide,
the requirements for macOS,
and the instructions for
bundle were available on
which jekyll and
which bundle showed that both executables were stored
where I expected in my user directory.
Still, I got the error below:
Your user account is not allowed to install to the system RubyGems. You can cancel this installation and run: bundle install --path vendor/bundle to install the gems into ./vendor/bundle/, or you can enter your password and install the bundled gems to RubyGems using sudo.
After double checking the environment variables in fish I figured I should
follow the instructions to the letter and also add the variables to
And it worked!
So, when using fish you also need to set
GEM_HOME in a
to work properly as it seemingly uses bash or the bash config internally.
I’m guessing we might see more issues like this pop up when macOS changes its default shell to zsh in Catalina.