This is an issue that is bloody unintuitive to figure out but makes perfect sense. You can stop reading now if you haven’t installed ruby with RVM since if that is not the case, I don’t have the solution. However for those using rvm, you should be well aware that you will get bundler issues when trying to run
sudo msfconsole which is why we have
rvmsudo msfconsole instead to not mess up your system.
You are required to use root permissions when running
setoolkit which you may instinctivly run as
sudo setoolkit which is wrong as you probably got by now. Instead do
rvmsudo setoolkit which will magically work.