Hoo, boy. A lot of hot air and a lot of too-fast conclusions. I have to mirror someone earlier in the thread (can't remember who, now), who said that now Craigs misgivings where a lot clearer. Apparently not to everybody, though *looks side-eyed at double7s post*
First off, I see Craigs point (and ZXDunnys simulated point): There is a class of not-quite-just-users, who wants to tinker around with things. Presumably, given that quite some weight is given to the argument that the Pandora is open, you can do what you want, no lockouts, yadda, yadda, then that class of NQJUser would be a sizeable bit of the Pandora user base. They are not necessarily us - They haven't hanged around these forums these last 2,5 years lapping up every bit of information, don't reread the wiki once a week to see if there are any changes, haven't got a virtualbox image specifically dedicated to pandora development and pnd hacking. They might even have a life.Now, they buy a pandora, expect it to be open and tinkerable, and they can't even open the packages...That is a problem. Whether Craigs solution would be the best or not is debatable, but it would be rather short-sighted to
not see that that is a problem.
And stop the silly "If you can't be bothered to read and understand the PND spec, you shouldn't tinker". That is smelly elitism, at best. Of course both Craig and ZXDunny and most anybody here are able to deal with a PND. That is not the point - The point is that someone who doesn't do this every day also need to be able to understand how to do this.
There are at least some ways to resolve this:
1) ZIP-PNDs. As far as I gather from the discussion here, there is really no reason why the pnd system could not actually contain a zip, just as it now can contain squashfs or a ISO, right? Yes, it might be less than ideal - Might take up more space, might be slower - but it would work? Then, by all means, code in that possibility. Make it possible to download the same pnd in different formats. Johnny NQJUser might not quite have his head around squashFStools, but he could understand this on the repo/archive/Appstore/whereever:
DOWNLOAD
MassiveGame.pnd - Optimised for performance and space
MassiveGameZ.pnd - Sligtly slower, but easily hacked and modified
2) Tools. There is, as people have said at different places in the thread, a need for somewhat-user tools for these things. Particularily for a windows environment. People have mentioned a pnd browser (similar to something like winZip) in order to open and modify pnds. Possibly something even simpler - a pnd extractor/repacker would work as a start (the program unpacks a given pnd to a directory, or repacks a directory into a pnd). If the above idea gets implemented, maybe a converter from/to a zip-pnd might be an idea. Anything that is a) a selfcontained application (no need to install squashfs-tools or virtualbox images or whatever) that B) allows Johnny to open up and re-wrap his pnd.
Bounty these, or something. This is something that, realistically, would be quicker to code up than to implement new pnd functionality (probably quicker than to
agree on said functionality, even). Make a good requirements spec:
- needs to be selfcontained
- needs to be able to handle both squashFS and ISO pnds
- needs to follow fairly ordinary windows UI guidelines
- needs to make a sanity check before rewrapping and give a sensible error message if rewrapping is not possible (i.e. "main application missing or renamed - Please check foo.pxml")
...and some other things possibly, and post a reasonable bounty for it. Or possibly two - A smaller one for an extract/repack thing, and a larger one for the complete burger.
Whilst we're at it, why not a windows-style installation application? Something that opens a nice window which allows you to select a pnd, select an SD card (or auto-selects whatever SD-card is mounted) and lets the user decide, through a simple button press, whether s/he wants the pnd to appear in the menu, on the desktop, or both. Press OK, the app creates the necessary folders (if they're not already there) and then copies the pnd to the right place. This is so simple, almost I could do it, yet I think it would help new windows-based user a lot. It could even be associated with .pnds, so that it starts when a pnd is opened.
3) Documentation. We are in serious need of some good old IA work here. All this information exists (I've learned a lot throughout this thread) somewhere, but to know it one must be one of us (even to know where to look, one needs to be one of us). Even for the things that are on the wiki, it is sometimes quite difficult, even for me, to find things that I know are there. We need to think quite hard about documentation from several angles:
- User profiles. Entry pages for "I am a new user and know absolutely nothing", "I am somewhat experienced and want to tinker about a bit", "I am a power user and wants to get hairy technical details". Possibly better names for the pages, too
- Task-oriented pages. Entry pages for specific task groups - Installing software, Hardware modification, Updating firmware, opening pnds, trouble-shooting...
- Application-oriented pages. Everything about particular apps - one page each for GnGeo, Gnumeric, Thunar, Picodrive...
- Host system-oriented pages. One page each for Windows, MacOSX, Linux, for those guides and hints that apply precisely to users from that environment.
- Use-case-oriented pages. Entry points for where one wants to emulate system x, use a gps, draw, make music, type notes, surf the web...
Someone might argue that those points overlap. Yes. That is the point, really. Someone else might argue that the information already exists over there *points in random direction*. Yes, I know. But it needs to be in one place (the wiki) and to be accessible from several angles in order to be findable for several kinds of users. And it needs to be updated - All these indexes (as it is, really - Several indexes to the same pages) needs to be kept up-to-date whenever new information is added.
This last point is, I'm afraid, the only one I could be of much use in (and even that not so much until my work load lessens), but it needs to be done. Right now, Johnny NQJUser cannot open his PNDs because he lacks the tools and he don't know where to look for them. Ideally, we'd solve both those problems and a few more on the way.