We've discussed it endlessly internally, but I've always been pushign for 'reasonably unique'; you can do it the 'hard unique' way like Palm, where you hit a CGI and obtain a unique-id fromthe official DB. It can work, but it doesn't really help if someone copies the PXML.xml and forgets to fetch a new ID, etc.
The other school is.. consider java; no central authority, but you put your organizations domain name up front; poof, 'reasonably unique'.
Thats the angle I've been pushing; put a dev name or a app name, and some identifiers in there, and you're almost certainly guaranteed to be unique, unless someone wants to make a mess of things, or copy/pastes. None of which a formal unique-id solves anyway.
Using a hash or the like is just 'overkill', and no one wants to see that nasty name on their SD card.
(ie: if we redirect pnd or pxml.xml appdir writes back to (say) SD's /pandora/appdata/UNIQUE_ID directory, then no one wants that to be 300 chars long
jeff
Scanned a bit of your document, it is not quite right in one part. Very well done though, and thanks
The pnd_make.sh is in the libpnd git for reference
An app is a dir containing a PXML.xml file (And whatever else it wants), or its one of those bundled up into a .pnd file; a .pnd file is essentially a .iso file with the PXML.xml appended to the end (and optionally an icon.)
That is fail-safe -- if they forget to append the PXML.xml, the fact an iso is 'plaintext' (not a .cso), the search for the PXML will find it (albeit slowly if its a multimegabyte iso.) IDeally the PXML is appended (pnd_make.sh will do that of course), and the PXML is findable easily that way (and the icon following it.)
An application need not be a .pnd -- it can be unpacked as a dir, no problem. (This already works.. libpnd returns a discovered app and does not distinguish between app-dir or app.pnd, and supports execution and mounting/unmounting of both kinds of apps with the same API.)
(Naturally we'll be pushing for .pnd distribution to keep things in a single file and easy on the user, but I like to be clear it is not the only way.)
jeff
(and before you ask, we did consider a lot of variations; appending indexes, using zip files with their built in TOC even if uncompressed, cramfs and so on. Given that we want PXML appended, we can always consult the PXML to identify the package type (if not .iso) up front, and so on. Thats all future.)