Retroarch shared savestates

I am running Solus on a Lenovo 710S. I had previously installed Retroarch from the package manager.

When I try to configure the Retroarch runner, if I use /usr/bin/retroarch as the executable I get the following error:
Traceback (most recent call last):
File “/usr/lib/python3.6/site-packages/lutris/gui/”, line 667, in game_selection_changed
File “/usr/lib/python3.6/site-packages/lutris/gui/”, line 624, in on_game_run
File “/usr/lib/python3.6/site-packages/lutris/”, line 203, in play
if not self.prelaunch():
File “/usr/lib/python3.6/site-packages/lutris/”, line 178, in prelaunch
if not self.runner.is_installed():
File “/usr/lib/python3.6/site-packages/lutris/runners/”, line 152, in is_installed
return self.is_retroarch_installed() and is_core_installed
File “/usr/lib/python3.6/site-packages/lutris/runners/”, line 144, in is_retroarch_installed
return system.path_exists(self.get_executable())
File “/usr/lib/python3.6/site-packages/lutris/runners/”, line 145, in get_executable
if os.path.isfile(runner_executable):
File “/usr/lib/python3.6/”, line 30, in isfile
st = os.stat(path)
TypeError: stat: path should be string, bytes, os.PathLike or integer, not NoneType

So I gave up on using the system version and just installed libretro through the runnners but used the system retroarch.cfg that I had previously set up in ~/.config/retroarch

Even though cores is defined in the cfg file to go to ~/.config/retroarch/cores it still downloads them to ~/.local/share/lutris/runners/retroarch/cores

But anyway, I can deal with having duplicate cores too. The issue I have is that in retroarch.cfg I save states to ~/Games/states but when I run a game through Lutris it will only load states created by the Lutris Retroarch even though the original ones are in the same folder. If I run Retroarch on it’s own I can access both save states from Retroarch and Lutris’ version. Why can’t I get Lutris to read the other save states?