RetroDECK icon indicating copy to clipboard operation
RetroDECK copied to clipboard

SD Card name with white space breaks symlinks for ES-DE

Open L4R5 opened this issue 1 year ago • 3 comments

I named my SD Card "Steam Deck". After installation of the latest retrodeck (0.8.1b) today I realized, that ES-DE does not keep game list information and found the following broken symlinks:

(deck@steamdeck ES-DE)$ pwd
/home/deck/.var/app/net.retrodeck.retrodeck/config/ES-DE
(deck@steamdeck ES-DE)$ ls -l
total 32
lrwxrwxrwx 1 deck deck   65 Jul 14 12:57 collections -> '/run/media/deck/Steam'$'\n''/home/deck/Deck/retrodeck/ES-DE/collections'
drwxr-xr-x 2 deck deck 4096 Jul 14 12:58 controllers
drwxr-xr-x 2 deck deck 4096 Jul 14 12:57 custom_systems
lrwxrwxrwx 1 deck deck   63 Jul 14 12:57 gamelists -> '/run/media/deck/Steam'$'\n''/home/deck/Deck/retrodeck/ES-DE/gamelists'
lrwxrwxrwx 1 deck deck   32 Jul 14 12:57 logs -> /var/config/retrodeck/logs/ES-DE
drwxr-xr-x 3 deck deck 4096 Jul 14 12:57 resources
drwxr-xr-x 3 deck deck 4096 Jul 14 12:58 screensavers
drwxr-xr-x 2 deck deck 4096 Jul 14 12:58 scripts
drwxr-xr-x 2 deck deck 4096 Jul 14 12:57 settings

Update: It also seems to break lots of other symlinks for emulators.

L4R5 avatar Jul 14 '24 15:07 L4R5

This bug is very weird, I need to setup a proper environment in order to reproduce it. It's weird because all those paths are quoted, I wonder if it's some residual of an old build where these fixed might have already been applied without even realizing it.

If you did not make any custom configurations do you mind to reset RetroDECK to see if this issue is repeating? Thanks a lot and sorry for the inconvenience.

XargonWan avatar Jul 20 '24 14:07 XargonWan

I will try with a fresh sd card with the latest version tomorrow.

L4R5 avatar Jul 20 '24 16:07 L4R5

I tried again with 0.8.2b. I moved my existing /home/deck/.var/app/net.retrodeck.retrodeck out of the way for retrodeck to initialize the directory structure again. It shows the same behaviour for all symlinks I checked. Some examples:

(deck@steamdeck net.retrodeck.retrodeck)$ pwd
/home/deck/.var/app/net.retrodeck.retrodeck
(deck@steamdeck net.retrodeck.retrodeck)$ ls -l config/ES-DE/
total 32
lrwxrwxrwx 1 deck deck   84 Jul 21 11:13 collections -> '/run/media/deck/Steam'$'\n''/home/deck/.local/share/Steam/Deck/retrodeck/ES-DE/collections'
drwxr-xr-x 2 deck deck 4096 Jul 21 11:15 controllers
drwxr-xr-x 2 deck deck 4096 Jul 21 11:13 custom_systems
lrwxrwxrwx 1 deck deck   82 Jul 21 11:13 gamelists -> '/run/media/deck/Steam'$'\n''/home/deck/.local/share/Steam/Deck/retrodeck/ES-DE/gamelists'
lrwxrwxrwx 1 deck deck   32 Jul 21 11:13 logs -> /var/config/retrodeck/logs/ES-DE
drwxr-xr-x 3 deck deck 4096 Jul 21 11:13 resources
drwxr-xr-x 3 deck deck 4096 Jul 21 11:15 screensavers
drwxr-xr-x 2 deck deck 4096 Jul 21 11:15 scripts
drwxr-xr-x 2 deck deck 4096 Jul 21 11:13 settings
(deck@steamdeck net.retrodeck.retrodeck)$ ls -l config/retroarch/
total 168
drwxr-xr-x 4 deck deck   4096 Jul 21 11:14 config
drwxr-xr-x 2 deck deck  12288 Jul 21 11:14 cores
lrwxrwxrwx 1 deck deck     81 Jul 21 11:13 logs -> '/run/media/deck/Steam'$'\n''/home/deck/.local/share/Steam/Deck/retrodeck/logs/retroarch'
drwxr-xr-x 2 deck deck   4096 Jul 21 11:14 overlays
-rw-r--r-- 1 deck deck 111269 Jul 21 11:15 retroarch.cfg
-rw-r--r-- 1 deck deck  23028 Jul 21 11:14 retroarch-core-options.cfg
lrwxrwxrwx 1 deck deck     84 Jul 21 11:13 shaders -> '/run/media/deck/Steam'$'\n''/home/deck/.local/share/Steam/Deck/retrodeck/shaders/retroarch'
lrwxrwxrwx 1 deck deck     71 Jul 21 11:13 system -> '/run/media/deck/Steam'$'\n''/home/deck/.local/share/Steam/Deck/retrodeck/bios'

L4R5 avatar Jul 21 '24 09:07 L4R5

This should be resolved in 0.9.2b, as there was a bug in our symlink-preparation function.

icenine451 avatar Mar 26 '25 21:03 icenine451