sonik-br / GDMENUCardManager

Manage content on SD Card for Dreamcast's GDMenu
GNU General Public License v3.0
234 stars 19 forks source link

MacOS Error loading file /Volumes/DREAMCAST/##/._disc.gdi #58

Closed T-Maxx77 closed 3 weeks ago

T-Maxx77 commented 7 months ago

Describe the bug After making changes to the games list (ex. removing a game), and clicking 'Save Changes' I'm met with the error in the title: Error loading file /Volumes/DREAMCAST/##/._disc.gdi. It starts with the first game in /02/ and happens for every title/directory. As you'd expect, there aren't any actual hidden files in the game directories, i.e. there is no ._disc.gdi.

If you rename the disc.gdi file in a directory (ex. ddisc.gdi) the app seems ok with it, but to be safe I closed th app, re-named it back to disc.gdi, reopened the app and it was still OK.

To Reproduce Steps to reproduce the behavior:

  1. Make a change to the games list, like remove a game
  2. Click on 'Save Changes'
  3. See error

Expected behavior The app shouldn't look for or expect any hidden files. I expect to make changes then save them.

Desktop (please complete the following information):

Additional context My only work around after removing a game was to close the app, manually change the name of every single disc.gdi file, reopen the app, close the app, rename every file back to disc.gdi, reopen the app, and click 'Save Changes'.

Also note, this is after the first initialization of the card with the app. I was able to drag & drop all my games onto the card, rename them, sort them and save them all ok. It's after all that when I try removing a game and click 'Save Changes' that the error occurs.

sonik-br commented 7 months ago

Hi. Unfortunately I have no means of testing the app on a mac.

T-Maxx77 commented 7 months ago

That's unfortunate, is there any way I can help? Like a debug version or something? I'm not super versed in software but I'd like to help if can.

A few years ago someone made this for linux: https://github.com/jstolarek/dc-card-maker-script

I altered it for use on my mac and had it working. Maybe something there would help.

silvagoncalodev commented 3 months ago

I'm seeing the same issue too, but I'm using macOS Sonoma 14.4.1. Any idea about what could be causing this?

mikegabriel commented 3 months ago

Just jumping in that I suspect you might have luck if you run the native macOS tool dot_clean against the volume.

From the Terminal app:

dot_clean /Volumes/**SD_CARD_NAME**

It doesn't give any sort of indicator but doesn't take long to run, after running it, re-open GD MENU Card Manager.

You'll likely need to run this command every time you open the SD Card in Finder as that is when macOS likes to create its dot files.

T-Maxx77 commented 3 months ago

Thanks, mikegabriel. Just yesterday I learned about dot_clean and it works for me. Would have learned a bit sooner if I saw your comment!

sonik-br commented 2 months ago

Guys, I need your help. I need to test a fix for this problem but I don't have access to a OSX computer. Can you help testing it? Go to the releases page and grab the file "GDMENUCardManager.v2.0.0-TESTING1-osx-x64-AppBundle.tar.gz"

silvagoncalodev commented 2 months ago

@sonik-br the new release is working for me. Thanks for taking the time to patch this! 👍

I used these steps to reproduce the issue consistently on the old 2.0.0 release:

  1. took an SD card that was already loaded with working games;
  2. deleted 1 game from the list, added 2 new ones, then Sort List.
  3. after clicking on Save Changes, the ._disc.gdi error message appears almost immediately.

I repeated these on the new 2.0.0 TESTING release and it runs just fine. The new games are saved correctly, no errors whatsoever.

T-Maxx77 commented 2 months ago

Can also confirm this new release works for me.

I deleted one game, added another, then Sort List, then Save Changes.

No errors with the new release, tested the card in the Dreamcast and all works as expected.

Thanks so much for looking into this!

savaughn commented 3 weeks ago

I'm on m1 mac os, 13.6.9 (22G830), with GDMENUCardManager v2.0.0 and I get this error every time I write successfully to the card, eject/remove card, insert/read card with GDMENUCardManager, then attempt to save new changes to SD card. I tried dot_clean but made no difference. I've tried PNY, Kingston, and samsung cards. All have the same issue. I have to wipe the card, add all the files back, and make changes before saving.

mikegabriel commented 3 weeks ago

@savaughn are you using the 2.0.0 release from 2023 or the latest testing release from a few weeks ago.

From the releases page, make sure you are using GDMENUCardManager.v2.0.0-TESTING1-osx-x64-AppBundle.tar.gz

savaughn commented 3 weeks ago

ah that's it 💯 I was using the 2023 release. Switching to the TESTING1 release no longer repros the issue. Thanks!