Proposal: Consolidate filesystem locations
-
At the moment, things are a bit scattered. There's stuff in /home/pi, bits in /root, and then /opt/retropie, too.
I did mention this in IRC, and wasn't immediately shot down, but I'd like to fix this. (I realise some people may not think it's broken, and that's the point of this 8-)
I'd like the installer to put EVERYTHING in /opt/retropie - roms, checked out repos, everything. And /opt/retropie should be owned by the pi user, so there's no need for root/sudo things (these are meant to be embedded, right? Caring about user permissions shouldn't be on the radar).
So, when I get some time (and I have a pile of things taking up my spare time at the moment), I'd like to submit a PR to accomplish that, unless anyone has any objections (or suggestions?)
The other thing I'd like to do is totally remove the shallow git clones that are currently done, and preserve any git repo that's been checked out.
There is method to my madness. If user x has done a git checkout, it's EXTREMELY LIKELY that they'll do a checkout again. So deleting and redownloading is counter-intuitive... And with repos that have submodules, you have to do a full clone of the submodules, so deleting any repo with a submodule means that you do a shallow clone of one repo, and then a full clone of however many submodules there were.
Anyone have any feedback?
-
@xrobau you realise how many systems this would break right?
-
I do not understand what this would bring us.
It might be slightly cleaner, but what functionality will this give us? What problem are you solving with this activity?
Basically what I'm asking is : is this worth the risk (in terms of bugs introduced) ? -
@xrobau said in Proposal: Consolidate filesystem locations:
At the moment, things are a bit scattered. There's stuff in /home/pi, bits in /root, and then /opt/retropie, too.
ROMS are in
$HOME/RetroPie
nothing should be in /root
everything else is in/opt/retropie
- some config locations from $HOME are symlinked to/opt/retropie/configs/
to keep everything together - a few still need to be added. (excluding a few things in /etc as needed)I did mention this in IRC, and wasn't immediately shot down, but I'd like to fix this. (I realise some people may not think it's broken, and that's the point of this 8-)
There is nothing to "fix" - this isn't a bug but your preference. I thought I had already made it clear on IRC that I didn't want to change this.
I'd like the installer to put EVERYTHING in /opt/retropie - roms, checked out repos, everything. And /opt/retropie should be owned by the pi user, so there's no need for root/sudo things (these are meant to be embedded, right? Caring about user permissions shouldn't be on the radar).
root/sudo is only used for installing - you would still need that to create the folder in /opt.
everything that should be written by the installing user is owned by the user, things that should not be touched are not. Safer.
To make sure every application used
/opt/retropie
without things like our symlinks we would need to maintain patchsets against every piece of software that expected a user config in $HOME. Including maintaining our own Kodi etc. 50+ patches to maintain on upstream code. No thanks.So, when I get some time (and I have a pile of things taking up my spare time at the moment), I'd like to submit a PR to accomplish that, unless anyone has any objections (or suggestions?)
Sorry but I wouldn't be interested. I don't see the benefit.
The other thing I'd like to do is totally remove the shallow git clones that are currently done, and preserve any git repo that's been checked out.
I already added the option for this for you (doesn't do full clones yet but keeps repositories around -
__persistent_repos=1
) - I don't think those with small sdcards would appreciate keeping megabytes of source lying around all the time. I may make this default on desktop machines in the future after it's had more testing (and I need a gui option to clear the tmp folder in the gui). -
Not really the same subject, but it's about path on retropie ;) :
why retropie have
Rom here : /home/pi/RetroPie/roms/%System%/
Gamelist here : /home/pi/RetroPie/configs/all/emulationstation/gamelists/%System%/gamelist.xml
Image here : /home/pi/.emulationstation/downloaded_images/%system%/Emulationstation work great with all thing at the same place
Rom here : /home/pi/RetroPie/roms/%System%/
Gamelist here : /home/pi/RetroPie/roms/%System%/gamelist.xml
Image here : /home/pi/RetroPie/roms/%System%/downloaded_images/It's even easier for user to "save" or "backup" only the roms folder with all scraped datas ;)
Sorry it's just my 2 cents ;)
-
@screech said in Proposal: Consolidate filesystem locations:
Not really the same subject, but it's about path on retropie ;) :
why retropie have
Rom here : /home/pi/RetroPie/roms/%System%/
Gamelist here : /home/pi/RetroPie/configs/all/emulationstation/gamelists/%System%/gamelist.xml
Image here : /home/pi/.emulationstation/downloaded_images/%system%//home/pi/.emulationstation/ is a symlink to /home/pi/RetroPie/configs/all/ - so they are the same path.
Emulationstation work great with all thing at the same place
Rom here : /home/pi/RetroPie/roms/%System%/
Gamelist here : /home/pi/RetroPie/roms/%System%/gamelist.xml
Image here : /home/pi/RetroPie/roms/%System%/downloaded_images/By default sselph's scraper uses those locations.
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.