Pandora Directory Structure Question


DaveC

Internal Development
Joined
Mar 4, 2004
Messages
9,208
I noticed while trying to manage my files on the prototype that a directory called "Appdata" appeared with a bunch of junk accumulating in it. Is this how the final structure will be?

What is the purpose of a separate place like this and why can't this "appdata" folder be in the SAME directory as the app itself? This seems very sloppy and unnecessary to have stuff in separate spots. When I move/delete/update/backup etc it is a hassle to now have to manage files in TWO separate spots. Now all of the file work you do is doubled. It would be much simpler to just work in the app's directory itself without having to go through files all piled in a separate spot that will get unweildy when we start getting lots of stuff. This seemed to work fine on the GP2X/Wiz where the app and it's data directories were in the same directory.

Could it be made at least as an option so we can put all files and their appdata subdrectory in the same directory?
 
this might be fixed when using PNDs and a "PND manager". You would move PNDs around using the manager and things would be moved appropriately.

Then of course some people would argue that when you move/delete a PND, you shouldn't touch the existing user application data. The manager could give the user the choice of keeping or deleting application data when the corresponding PND file is moved or deleted, etc.
 
overjupiter said:
this might be fixed when using PNDs and a "PND manager". You would move PNDs around using the manager and things would be moved appropriately.

Then of course some people would argue that when you move/delete a PND, you shouldn't touch the existing user application data. The manager could give the user the choice of keeping or deleting application data when the corresponding PND file is moved or deleted, etc.
I really don't like separate "manager" programs though and don't really see the need if you keep things SIMPLE which you should. It is much faster and easier to just drag, drop, cut, paste, through windows etc. I don't know why we need to start re-inventing things, the old file manager works fine.
 
Last edited by a moderator:
It's possible we could make the appdata Dir in the same place as the pnd perhaps. It'd still have to be a Dir of course.

Bring it up with vimacs :) I like all state in one place myself.. Keep pnds in one spot, data In another, instead of data all over. Back up all your data with one copy! :) maybe an option for post release?

Jeff
 
I've brought up the issues about moving/deleting pnds and appdata before. See this thread, with replies from skeezix and vimacs.

http://www.gp32x.de/board/index.php?/topic/50234-libpnd-the-pandora-library/page__view__findpost__p__768880

The consensus was they were going to freeze libpnd features and add more features, if any, later. The code is open source so you could add whatever functionality you want later on.
 
Last edited by a moderator:
skeezix said:
It's possible we could make the appdata Dir in the same place as the pnd perhaps. It'd still have to be a Dir of course.

Bring it up with vimacs :) I like all state in one place myself.. Keep pnds in one spot, data In another, instead of data all over. Back up all your data with one copy! :) maybe an option for post release?

Jeff

If I read your post right what you are saying is actually NOT to have everything in one place. If pnds are in one spot and data is in another that IS "data all over" as you have things separated out into two spots now and you need to back up with at least TWO copies, not one. You need to copy the pnd, then hunt for the appdata files in another spot.

I am saying there should be a way to REALLY have everything for an app in its own directory and no where else. Say if you have Quake in a directory on the card called Games/Quake1 Then Quake and ALL data directories (like Games/Quake1/APPDATA) could be in the Games/Quake1 dir. If I want to back up/update/remove Quake (say backup) all I have to do is drag the Quake1 directory somewhere on my computer and it is done. There will be no need to then hunt around for all of the Quake config files, PAKs etc in another spot. That is just messy for no reason.

It would be messy for apps to start spreading files around without you knowing what or where. I know I hate all of those behind the scenes things because if you want to update things that makes it a nightmare. For example someone updates an emu, you can't just delete the files in the current dir and just replace with the new ones (and leave your ROMs and othe rthings alone). You would have to go through all kinds of uninstalling and reinstalling just like a Windows PC, BLech!
 
Last edited by a moderator:
As far as I know, all the files the apps write go to appdata. They don't go all over the place, just this one place. It's like an application making a subdirectory in your home directory to hold your personal settings. This also allows you, for example, to easily delete a large PND game file while keeping all the associated data (save data, settings) for the next time you add that game to the card. I'm actually all for this approach. It's much cleaner and clear and you don't have to go about making subdirectories for all the PNDs.
 
B-ZaR said:
As far as I know, all the files the apps write go to appdata. They don't go all over the place, just this one place. It's like an application making a subdirectory in your home directory to hold your personal settings. This also allows you, for example, to easily delete a large PND game file while keeping all the associated data (save data, settings) for the next time you add that game to the card. I'm actually all for this approach. It's much cleaner and clear and you don't have to go about making subdirectories for all the PNDs.
+1
 
Last edited by a moderator:
WTH are you guys talking about? isn't appdata only for PND files that write to the card? You would never have a directory as /mount/SD/Quake1/ with all your quake files in it, you would have a Quake1 PND. WHere would the files go? They can't go back into the PND as it's read-only. So they would just go into the same directory as the PND file? That seems extremely messy.

Or is appdata where EVERYTHING that gets written to the SD ends up (not just PND files writing there?) In that case this may need to be tweaked.

[edit] durr I can't read. basically what urjaman said.[/edit]
 
craigix said:
I also think the files should be in the same folder.

I hate the thought of this 'dll hell' of appdata.

"dll hell"? I know what this means on windows, but I don't see the relevance here. I must have misunderstood something, could you open this up a bit?
 
Last edited by a moderator:
Goddamn, is this world flooded with "I'm a windows user and always use admin account, everything else is to complicated"-idiots?
A game/app should decide itself where to put it's data, based on good standards. Preferences and save-files should go to a decent place in one users home-dir, based on certain rules. Shared files should go to a shared dir or be mounted from a pnd. Even current-generation closed gaming-consoles like the ps3 allow something similar, now we have a decent multiuser-OS and shall throw that away because some users only know how to use a single-user system?
 
conso said:
Goddamn, is this world flooded with "I'm a windows user and always use admin account, everything else is to complicated"-idiots?
A game/app should decide itself where to put it's data, based on good standards. Preferences and save-files should go to a decent place in one users home-dir, based on certain rules. Shared files should go to a shared dir or be mounted from a pnd. Even current-generation closed gaming-consoles like the ps3 allow something similar, now we have a decent multiuser-OS and shall throw that away because some users only know how to use a single-user system?
The home directory is on the NAND. See the problem?
 
Last edited by a moderator:
I vote for:
SomeAppFolder/PND.xml
SomeAppFolder/binary
SomeAppFolder/somenonsystemlibrary.so
SomeAppFolder/runscript (optional)
SomeAppFolder/data/somedatafile

I like all of one app in one place. I do see the point of backing up all app data in one place - could always automatically create a folder with:
GlobalData/SomeAppSymlink->SomeAppFolder/data
GlobalData/SomeOtherAppSymlink->SomeOtherAppFolder/data

I usually want to back up/replace individual apps though.
 
foft said:
I vote for:
SomeAppFolder/PND.xml
SomeAppFolder/binary
SomeAppFolder/somenonsystemlibrary.so
SomeAppFolder/runscript (optional)
SomeAppFolder/data/somedatafile
Most PNDs are compressed, read-only binaries. Not "SomeAppFolder", but rather "SomeApp.pnd". Thus this won't work uniformly.

(Also, it's "PXML.xml" not "PND.xml" although the latter would make more sense)
 
Last edited by a moderator:
rabidpoobear said:
WTH are you guys talking about? isn't appdata only for PND files that write to the card? You would never have a directory as /mount/SD/Quake1/ with all your quake files in it, you would have a Quake1 PND. WHere would the files go? They can't go back into the PND as it's read-only. So they would just go into the same directory as the PND file? That seems extremely messy.

Or is appdata where EVERYTHING that gets written to the SD ends up (not just PND files writing there?) In that case this may need to be tweaked.

[edit] durr I can't read. basically what urjaman said.[/edit]

I'm not sure how much of the Quake series media files (pak files) are freeware and can be included in the PND, by default.
This means that you will have a lot of stuff in the appdata folder that the user will have to be aware of (if he wish to remove quake / change pak files etc.)

Now this could just be me not understanding how PND files work, but would not emulators and interpreters such as ScummVM suffer the same problems?
I.e. the data files requires separate manual handling, in a not-very-intuitive (especially for beginners) directory.
I realize that there might not be a solution to this involving PND's, that this sort of application might have to be started (and handled) old-fashion style.

Personally I like the sound of having a separate folder for every pnd file, containing the pnd-file and a subfolder for it's external data.
It would make backing-up and deletion much easier and more intuitive for most new users.

conso said:
Preferences and save-files should go to a decent place in one users home-dir, based on certain rules.
And on witch of your sd cards would you want your home dir, on all of them? What happens if you have two cards in at once?

I don't think a home dir is a very good idea on a system where the only writable media you have is removable, not in the common-*nix sense you refer to anyway.

conso said:
... now we have a decent multiuser-OS and shall throw that away because some users only know how to use a single-user system?
Not some, most (judging from these forums) pandora users will use it as a single user system. (even if they do want a login screen)
And it's not trowing away anything, if I understand the current situation correctly, they have defined a variable to point to a certain place on the sd, if you don't like it, change it.

conso said:
Goddamn, is this world flooded with "I'm a windows user and always use admin account, everything else is to complicated"-idiots?

And a nice day to you too.
 
Last edited by a moderator:
dflemstr said:
conso said:
Goddamn, is this world flooded with "I'm a windows user and always use admin account, everything else is to complicated"-idiots?
A game/app should decide itself where to put it's data, based on good standards. Preferences and save-files should go to a decent place in one users home-dir, based on certain rules. Shared files should go to a shared dir or be mounted from a pnd. Even current-generation closed gaming-consoles like the ps3 allow something similar, now we have a decent multiuser-OS and shall throw that away because some users only know how to use a single-user system?
The home directory is on the NAND. See the problem?
Well, the .files and .dirs in my home directory make like 2 MB together on my system, and I'm using that home-partition for years. Anyway, I don't think it would be a huge problem to symlink the home-dir from sd or let the pnds define what dirs are necessary in each users homedir and create/link-by-need. I can't talk for skeezix, but IF he can implement such a mechanism to libpnd and needs to create some dirs on the SD for it, that's totally preferable to a capsuled approach.
 
Last edited by a moderator:
Back
Top