1.20.0 - No access to User folder on filesystem on macOS Appstore version
Is there an existing issue for this?
- [X] This is a bug in RetroArch frontend
- [x] I have searched the existing issues
Description
When I try to scan my ROM directory to import games I'm not able to access the User folder although full disk access permissions are granted. This only happens with the AppStore version on macOS. Directory is not found
Expected behavior
Have access to the whole file system on macOS
Steps to reproduce the bug
Just try to import ROMs from the menu
Version/Commit
1.20.0 macOS AppStore
Bisect Results
No response
Check in the nightly version
I don't know
Platform & operating system
macOS 14.5
Affected Cores
No response
Environment information
No response
Relevant log output
No response
I edited the ~/Library/Containers/com.libretro.dist.RetroArch/Data/Library/Application Support/RetroArch/config/retroarch.cfg manually to the path ~/Library/Containers/com.libretro.dist.RetroArch/Data/Documents/RetroArch and I can Access the directory but when I navigate to parent folders those can not be found again.
Am also seeing this. I even tried giving RetroArch full disk access, but still encountered the same issue. Using the CMD-O shortcut to load content, I was able to select a ROM file but the program simply crashes.
Hm, this was working for me at one point. It does have the "User Selected File (Read/Write)" permission selected. I'm seeing the same thing though. I'll see what's going on. In the mean time you can always manually copy things into its sandbox.
Thanks for reporting this. I'm experiencing the same issue on Macbook M1 Air on Ventura. Retroarch 1.20.0 downloaded from macOS app store.
Same here unfortunately.
Yes, me too. I keep my collection in my Documents folder and have no idea how to access anything from within the AppStore version. I even tried creating an alias folder (aka Shortcut) to my collection folder and place it inside the RetroArch app folder. Doesn't even show up! Yes, I too gave RetroArch permission to my whole system.
Same here, cant access User
I know this problem should be solved with 1.21.0 but for those who are still on 1.20.0 I found as a solution to create symbolic links to the folders in a location where retroarch has access to.
for example:
benny@mbp ~ % mkdir /Library/Application\ Support/RetroArch
benny@mbp ~ % cd /Library/Application\ Support/RetroArch
benny@mbp RetroArch % ln -s /Users/benny/Library/Containers/com.libretro.dist.RetroArch/Data/Library/Application\ Support/RetroArch Sandbox
benny@mbp RetroArch % ln -s /Users/benny/Library/Containers/com.libretro.dist.RetroArch/Data/Documents/RetroArch Data
Good to know that. Anyone know when the App Store version is updated to 1.21.0?
Looks like 1.21.0 was released for macOS on the Appstore about 1 week ago. Is anyone able to select a folder outside Retroarch when importing content through the Playlist function?
I tried to load content (one ROM) using the Load Content function. It works by using the Open using System File Picker option to select a folder outside Retroarch. However, I could not use the mouse and needed to navigate the file browser with the keyboard.
The app is sandboxed similar to how it is on iOS so it can't directly access the files outside its folder without using the Open... dialog in Load Content.
The app is sandboxed similar to how it is on iOS so it can't directly access the files outside its folder without using the Open... dialog in Load Content.
Thanks for your work on the app. Can you explain how to copy files to the sandbox?
EDIT: I'm uncertain if I should be seeing the same behavior between macOS and iOS. On iOS, I can see a list a folders when I select the Retroarch folder through Playlist -> Import Content -> Manual Scan -> Content Directory. But on macOS, the folder list is empty doing the same workflow. I attached videos to make it clearer. Full Disk Access was enabled through macOS Settings.
https://github.com/user-attachments/assets/84b99f1d-b49c-4be3-8b86-694b4c8bf3a8
https://github.com/user-attachments/assets/21a8e811-63a4-4dae-b61d-5d2c55ddf75b
same issue on 1.21.0, it seems the App Store version is completely broken
The easiest way I found to get this working is to create a content directory within the RetroArch sandbox. And then manually set the rgui_browser_directory to that content directory. Then drag all content in there and Import Content. Here are some steps:
- Close RetroArch first.
- I created my content directory in:
~/Library/Containers/com.libretro.dist.RetroArch/Data/Documents/RetroArch/ - You'll find the config file here:
~/Library/Containers/com.libretro.dist.RetroArch/Data/Library/Application Support/RetroArch/config/retroarch.cfg - In
retroarch.cfg, find thergui_browser_directoryand update it to:rgui_browser_directory = "~/Documents/RetroArch/content" - Restart RetroArch and Import Content. You should start from your content directory.
Note that the directory looks like you're setting it to the user's Documents directory. However, it seems to be relative to the app's sandbox in this context.
I hope this helps!
The easiest way I found to get this working is to create a content directory within the RetroArch sandbox. And then manually set the
rgui_browser_directoryto that content directory. Then drag all content in there andImport Content. Here are some steps:
- Close RetroArch first.
- I created my content directory in:
~/Library/Containers/com.libretro.dist.RetroArch/Data/Documents/RetroArch/- You'll find the config file here:
~/Library/Containers/com.libretro.dist.RetroArch/Data/Library/Application Support/RetroArch/config/retroarch.cfg- In
retroarch.cfg, find thergui_browser_directoryand update it to:rgui_browser_directory = "~/Documents/RetroArch/content"- Restart RetroArch and Import Content. You should start from your content directory.
Note that the directory looks like you're setting it to the user's
Documentsdirectory. However, it seems to be relative to the app's sandbox in this context.I hope this helps!
Thank you so much for giving such a detailed but simple to follow set of instructions! This works for me on 1.21.0. Can finally load my roms easily through the retroarch menu.