bakustarver / rpgmakermlinux-cicpoffs

Run any RPG Maker MV/MZ game on linux natively
GNU General Public License v3.0
60 stars 2 forks source link

[Suggestion] Use $HOME/.local/bin/nwjs-rpgm or $XDG_DATA_HOME/rpgmaker-linux as $mainfd #4

Open bayazidbh opened 1 month ago

bayazidbh commented 1 month ago

If I'm reading the install.sh right, it seems you're creating ~/.local/bin anyways. So why not just point mainfd there? I prefer if apps don't create new home folder if it's not 100% necessary. I put in nwjs-rpgm as folder name just in case user already have nwjs named folder/binary/script.

Though, considering what I know of the XDG folders spec, then the actual correct folder to use is $XDG_DATA_HOME which by default is ~/.local/share. Steam, for example, install itself there, as does Lutris runner assuming you're not using flatpak. And since it's not in ~/.local/bin there's no conflict with the executable file name so no need for weird folder names.

I'm okay with either, but I do prefer following XDG folders spec when possible. Just not the main home folder please - I'd even take $XDG_DOCUMENTS_DIR (~/Documents) over home.

(speaking of, I think instead of using ~/.local/share/applications, using $XDG_DATA_HOME/applications might be better).

bakustarver commented 1 month ago

I think It's just more intuitive for the user to see it in a more prominent place, in the home folder.

I'll add a custom installation path or make a deb package later.

~/.local/bin - default folder for executables

bayazidbh commented 1 month ago

I think It's just more intuitive for the user to see it in a more prominent place, in the home folder.

In that case, maybe the normal installer could default to installing in ~/Documents but can accept other folders? I personally prefer ~/.local/share and ~/.local/bin since that's what everything else uses (and I just don't like filling up my home folder).

I would've just manually change it up, but I haven't done a full read up on the script to know how everything's coded. If I could just provide an env var or edit a var inside the script and everything would behave correctly, I would just do that - but idk what are the stuff that I need to change to make things behave correctly.

Still, it's a thing to consider. Thanks for the response regardless!