RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    Any alternatives to symlinks for organizing non-libretro savegames?

    Scheduled Pinned Locked Moved Help and Support
    symbolic linksave files
    5 Posts 3 Posters 792 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      BreadPie
      last edited by

      Hi all, my retropie (raspberry pi 4, using current image) has an SSD connected by USB with all of my roms and save games, but I boot off a micro sd card. All of my save games and save states are saved in platform-specific folders within a 'savegames' folder in my 'roms' folder (by editing each platform's retroarch.cfg to point to the respective folder). It keeps it all neat and tidy and easy to backup (just copy the main savegames folder!).

      But, the non-libretro emulators (like Redream or PPSSPP) save their files elsewhere (such as in sub-folders in the 'configs' folder). I thought to symlink the, for example, Redream save directory to a folder within my USB-mounted savegames folder. But it just wouldn't work. After poking around on the internet (and on here), I'm guessing that might be because the SSD has a FAT32 file system? (And that symlinks to a FAT32 system don't work? As a test, I was able to get a symlink working where I sent my savegame folder to a sub-folder in the config folder. It wasn't useful but it was just a test to see if it would work, and it did. But I couldn't get the reverse to work). Assuming that's true, do I have any alternatives to symlinking that I can use to keep all my non-libretro save files in the same place as my libretro ones? I didn't (again using redream for example) see anything I could set in the redream.cfg file to do that. Has anyone else come up with a solution for this? Thanks.

      1 Reply Last reply Reply Quote 0
      • mituM
        mitu Global Moderator
        last edited by

        You can have symlinks pointing towards a FAT32 file/folder, but you can't have it the other way around (source symlink on the FAT32). As for your query, it depends on each emulator, but symlink-ing a config sub-folder should work.

        1 Reply Last reply Reply Quote 1
        • ClydeC
          Clyde
          last edited by Clyde

          You could try bind mounts instead of symlinks. Both should work the same in most cases with only very few exceptions. Although a mount is sometimes said to be more transparent to the system than a symlink, I don't know if that's true (or helpful in your case).

          Say, your FAT32 medium is mounted at /media/usb0 and has the directories arcade and snes on it. You could then mount those dirs to the resp. rom dirs like this:

          sudo mount --bind /media/usb0/arcade /home/pi/RetroPie/roms/arcade
          sudo mount --bind /media/usb0/snes /home/pi/RetroPie/roms/snes
          

          Both dirs have to exist for mount to work, the latter will be blended over by the former, making any contents invisible to the system for the time of the mount. Apart from that, it's the same as making arcade and snes symlinks to /media/usb0.

          The mounts above wouldn't survive a reboot, you'd have to add these lines to your /etc/fstab for permanent mounts at every system boot.

          /media/usb0/arcade  /home/pi/RetroPie/roms/arcade  none bind,bg   0 0
          /media/usb0/snes    /home/pi/RetroPie/roms/snes    none bind,bg   0 0
          

          If the system complains at boot time that it can't find /media/usb0/… (yet), you may have to mount that via fstab as well, like it is described in Manual Mount. But you should first test if temporary mounts make any difference to your problem.

          1 Reply Last reply Reply Quote 1
          • B
            BreadPie
            last edited by

            Thank you both for the replies.

            @mitu I guess it is possible then that my symlink commands were wrong? I did try a few different variations in case my poor linux experience was butchering something. Most were similar to the below:

            sudo ln -s /opt/retropie/configs/dreamcast/redream /home/pi/RetroPie/roms/savegames/dreamcast 
            

            I just get "Failed to create symbolic link" and "Operation not permitted"

            @Clyde The temporary mount worked! Will look to add them to /etc/fstab as you described. Thank you!

            1 Reply Last reply Reply Quote 0
            • mituM
              mitu Global Moderator
              last edited by

              @BreadPie said in Any alternatives to symlinks for organizing non-libretro savegames?:

              I just get "Failed to create symbolic link" and "Operation not permitted"

              That's because the filesystem ( the roms folder ) doesn't understand symlinks.

              1 Reply Last reply Reply Quote 1
              • First post
                Last post

              Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

              Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.