PND criticism


But how do I know where to put them? How do I know which directory my improved graphics need to go in without opening up the PND file? it's all very well just popping them in appdata/PNDname, but which subdirectory should they go in?
7zip can read squashFS files no problem. You can see the structure, extract the originals you want, and edit them in your graphics tool of choice. Can't replace them, 7zip can't write squashFS, but as Ivanovic says, you can dump replacement files into appdata.


Does that help?

Yeah, I achieved what I wanted by booting unto linux and grabbing the PND utils and re-working it through the command-line.


Point is that the PND format is almost hopelessly inaccessible to the average windows user who wants to poke around inside one. For instance, I had to use 7-Zip to open the file - I tried installing 7-Zip and then double-clicking a PND file, but it didn't start 7-Zip, it still asks me which application I want to use and 7-Zip isn't on the list.


If the pandora becomes more widespread, I'd expect a lot more people talking about problems like that.


D.
 
Point is that the PND format is almost hopelessly inaccessible to the average windows user who wants to poke around inside one. For instance, I had to use 7-Zip to open the file - I tried installing 7-Zip and then double-clicking a PND file, but it didn't start 7-Zip, it still asks me which application I want to use and 7-Zip isn't on the list.
By that logic, Apples IPA is just as inaccessible. Even though it is a zip file, Windows doesn't know that without opening it: you need to rename it to .zip first.


If the iPhone becomes more widespread, I'd expect a lot more people talking about problems like that. ;)
 
Dunny understand my concerns and I've had the same issues as him. Why do I have to spend hours trying to figure out PND weirdness, why was it even used when Zip would have worked and does work the world over (and I begged and pleaded that we used Zip files right from the start).


Even Ed is missing something here, people DO open and close zip files on the iphone all the time, it's so quick and easy - Ruckage does it when he does graphics for our iphone games, he does not need to recompile the app or do any weird command line work, he just drags the new files in and tries the app again, it's bliss for a non-programmer.


If you could do this on the Pandora people probably would play with PND files more, and moreover it would be so simple for them to and easy to explain to people how to do it.


But the same thing is happening in this thread as others, people won't move towards ease of use from the current situation, this is becoming a phenomenon.
 
Craig, please explain, as I'm missing something here.


The end user on the iPhones connects to the appstore and installs an app.


When does he have to open the IPA file?


Why?


Also, when developing for the Pandora, you don't need PNDs.


You can put the files on the Pandora and run them there directly.


No need to pack them up. You pack them when development is finished.


PNDs are only used for end-user distribution.


And I can't imagine why an end-user would have to open an IPA file.


Is that even possible on the iPhone, as non-dev?
 
Dunny understand my concerns and I've had the same issues as him. Why do I have to spend hours trying to figure out PND weirdness, why was it even used when Zip would have worked and does work the world over (and I begged and pleaded that we used Zip files right from the start).


Even Ed is missing something here, people DO open and close zip files on the iphone all the time, it's so quick and easy - Ruckage does it when he does graphics for our iphone games, he does not need to recompile the app or do any weird command line work, he just drags the new files in and tries the app again, it's bliss for a non-programmer.


If you could do this on the Pandora people probably would play with PND files more, and moreover it would be so simple for them to and easy to explain to people how to do it.


But the same thing is happening in this thread as others, people won't move towards ease of use from the current situation, this is becoming a phenomenon.

Can we consolidate the criticisms of PNDs/repos so that everything can be addressed together? See my post here.

Craig is complaining in this thread about the frontend for accessing the repo (be it Pandora Apps or the PNDstore) and people are arguing that he could just make a better UI that utilizes the repo spec. However, in another thread he is complaining about the unfriendliness of making and editing PNDs by the end user.


All of the complaints can be addressed without Craig going off on a goose chase trying to reinvent the wheel for 6 months. However, I don't think that we will get anywhere with Craig unless all of his complaints are addressed at once. Craig, could you bring all of your complaints to one location so that they can be all solved?


From this thread, it is clear that a beautiful, user-friendly UI can be made to access the existing infrastructure built around the repo spec.


Regarding the user-friendliness of PNDs, we could make a gui application that lets you drag/drop files to build/edit a PND (so the end-user can put some custom graphics or whatever he wants in). If this PND editing application is built for Windows and also for Pandora, then users who refuse to use the cmd line could still feel like they are able to edit PNDs. (This isn't my style, but some users may want to do this so that they feel that they have some ownership in their Pandora.) Also, this seems to be what Craig wants in the other thread. It would be even better if this PND building/editing application can be installed on Windows and integrated into the shell (like Tortiose SVN for instance), but that is more work.
 
Last edited by a moderator:
And I can't imagine why an end-user would have to open an IPA file.


Is that even possible on the iPhone, as non-dev?
Yes, but you have to rename them to .zip first.


To open a PND, you have to install 7zip and rename to .sfs. A slightly more difficult process, but worth the trade off, in my opinion, to give the average end user that doesn't want to know what's in it a better experience.
 
I think Craig is concerned with simple end-user mods such as e.g. replacing image files, sounds and similar stuff.


Currently to access a PND file you need to install squashfs tools which are less readily available on windows (7zip is a good tool for reading them). There are some mechanisms in place which can be used to achieve such mods such as placing replacement files in the same relative path in your appdata directory or just extracting the PND and launching directly from the directory.


The downside is that these mechanisms are not obvious to anyone who hasn't read the PND specification and that reading them on windows requires knowledge of compatible tools (again, it is not obvious that 7zip can open PNDs).


Moreover, the fact that the PXML file needs to be appended at the end of the iso/squashfs file complicates such quick edits even more.


For your typical developer this is a non-issue as he will read the PND spec and know how to handle this. For the computer illiterate end-user this is not a problem either as he or she will not modify a program anyway. The trouble exists with somewhat knowledge end-users who like to experiment and play around with their software.


Switching to plain zip files is possible, but the choice for squashfs was not made randomly. Squashfs is compact and performs much better than zip for random access. There is a trade-off here and Craig supports simplicity while the devs have chosen performance.
 
I think Craig is concerned with simple end-user mods such as e.g. replacing image files, sounds and similar stuff..

Well, for that reason we created the overlay.


The normal user shouldn't change the PND.


If he wants to replace the graphics for SuperTux for example, he can simply modify them and copy them uncompressed into the appdata-Dir of SuperTux without changing the PND.


Then his graphics will automagically be used.


Compared to Apple - how many end-users do change graphics of an application they installed from the Appstore? :eek:
 
The downside is that these mechanisms are not obvious to anyone who hasn't read the PND specification and that reading them on windows requires knowledge of compatible tools (again, it is not obvious that 7zip can open PNDs).
It's not obvious that IPA is ZIP either. Anyone that wants to see what's inside needs to go to the internet to find out how anyway. How is that different from someone doing the same thing for a PND? I don't see why Apple can get away with it for millions of Average Joe users, but the Pandora must somehow solve this problem.


Also, if you want to change things, there is no reason to unpack/repack the PND: as was mentioned, just stick modifications into the appdata directory; this actually makes it superior to Apples IPA format as well, I would like to point out. If your complaint is that it's not common knowledge that this can be done, then better documents can be created, but sooner or later they're going to have to look it up anyway. Like I said, even the IPA format, even though it is just a ZIP, it isn't obvious that it's a ZIP: anyone that wants to modify it still needs to go to the internet and ask in order to learn that you can just rename it to .zip to get at the contents.


One other thing: Craig keeps saying to "take off the developer hats" and worry about what the end user wants. Modifying things inside a package is definitely not an end user thing, it is a developer thing.
 
But how do I know where to put them? How do I know which directory my improved graphics need to go in without opening up the PND file? it's all very well just popping them in appdata/PNDname, but which subdirectory should they go in?
Run the pnd. Minimise it. Navigate to /mnt/utmp/<pnd name>/ and you can see the internal of a pnd. You can even do using Thunar if you want - no need for the command line.
 
Well, for that reason we created the overlay. The normal user shouldn't change the PND.
Yes, you know that and so do I. However, this user would not. Furthermore, he has no idea where to place them nor does he know how to access the contents of the PND to take a peek inside.


On the Pandora itself this is easy enough, IF you know where to look. I.e. boot the application and check /mnt/pnd/<app>. On Linux it takes a little bit more work since there is no auto-mounting of PNDs. But on Windows it is much harder. This behaviour is quite unique to the Pandora (as far as I can tell) and not obvious at first.


Personally, I think the current system is great. If a user wants to muck-around with his applications like this then I expect that he/she is willing to read some instruction on how to do so. The PND system is flexible enough to allow this in a very safe and simple way. Perhaps this information needs to be more visible.


I think I'm starting to understand Craig's objections a bit better now. I don't fully agree, but I see where he's coming from.


[edit]In my opinion, documentation is the solution here. These are not use-cases for typical end-users but user-cases for developers and power-users.[/edit]
 
Last edited by a moderator:
Run the pnd. Minimise it. Navigate to /mnt/utmp/<pnd name>/ and you can see the internal of a pnd. You can even do using Thunar if you want - no need for the command line.
What is the difference between /mnt/utmp and /mnt/pnd?
 
Yes, you know that and so do I. However, this user would not. Furthermore, he has no idea where to place them nor does he know how to access the contents of the PND to take a peek inside.
Average Joe User will not be doing this though. A person with the desire to do so should not have any problems looking up information on the internet, at which point they should see that the overlay is actually a much easier way for them than trying to unpack and repack even a .zip file.


As I've said, even Apple's IPA format is not intuitively a zip file, and anyone that wants to modify them needs to go to the internet to find out. The PND overlay is actually even simpler.
 
Run the pnd. Minimise it. Navigate to /mnt/utmp/<pnd name>/ and you can see the internal of a pnd. You can even do using Thunar if you want - no need for the command line.
What is the difference between /mnt/utmp and /mnt/pnd?

/mnt/pnd has presumably been provided for folks to manually mount the pnd if they want to. If you run it from the menu or the desktop, then they system will automatically plonk it in /mnt/utmp.
 
Average Joe User will not be doing this though.
I fully agree. Perhaps we need to combine some information and specs into a PDF file which is available at a highly visible location.


Such a document would consist of three chapters:

  • End-users
    Downloading, installing and updating PNDs. The pandora/menu, pandora/desktop,... structure, the repositories and the PND package managers.
  • PND builders and modders
    Information about how PNDs are structured (i.e. PXML, squashfs/iso,...), where and when they are mounted and the usage of appdata for configuration, data files and overrides.
  • Firmware engineers (not 100% sure about this one)
    The protocols, scripts, tools and their hooks that function behind the scenes of PNDs. If you want to modify or extend the process of mounting PNDs, you would look here.



@freamon. Ok, that's clear. Thanks.
 
Has the devs examined edje_cc and edje_decc commands, which Enlightenment is using?


They are creatind a single .edj file from scripts (.edc), images, fonts, etc. And its used by the app.


The point is, each application should only have one single .edj file which contains all its gui specificaiton...
 
Well, to be honest: Developing for the iPhone seems much more complicated to me than for the Pandora.


GLBasic can create iPhone apps as well, and I wanted to try to create some simple apps for free.


Now, to get something onto the appstore, I need to register.


Okay, fine with me.


What I couldn't find out yet was how to put the binaries together into one working package I can upload onto Apples Appstore.


I tried to read into it on the Apple site, but they tried to tell me I need a Mac for that (seriously??)


So, with Dev hat off, PNDs work exactly the same as IPAs from Apple, they just have a way better compression.


Adding ZIPs for PNDs is also possible, so if anyone wants that, why not. I can't see it being useful for bigger apps though.


With Dev hat on, creating PNDs was way more easy for me than creating something for Apples Appstore (I still haven't figured out how to do it and gave up).
 
I fully agree. Perhaps we need to combine some information and specs into a PDF file which is available at a highly visible location.
Indeed, no argument the documentation can be vastly improved. My point is that this rare user that wants to modify a PND file but doesn't want to look up any information is no reason to switch to the inferior zip format.


Furthermore, I'd like to propose something. If we switch from game.pnd to game.zip like Craig wants, how many users do you think will just decompress that zip file into the root of their SD card, rather than copying it in whole? A lot more than want to edit the contents but can't be bothered to look up how to do that, I would believe. Assuming we've already gone ahead and fixed the documentation, of course.
 
I now see I'm never going to get my ideas for ease of use being the most important thing on the Pandora across. There is too much resistance to it, I predict this won't go anywhere good.

It doesn't help your case to dismissive comments like this, or to make insinuations that anyone who disagrees with you on any technical issue must just want your whole operation to go "tits up". When people have brought up different, possibly better ways of doing the same thing you want, you've treated that like resistance instead of the healthy technical discussion that it really is. Then there are people who said that certain standardization changes were unlikely to happen because it's unclear who is available to spend the time required to realize them. These sorts of statements aren't necessarily meant to discourage you either, they're just statements of fact that can't really be ignored if you want stuff like standard keybinding conventions to be implemented.
 
My point is that this rare user that wants to modify a PND file but doesn't want to look up any information is no reason to switch to the inferior zip format.
Indeed. Quite a bit of thought has gone into the PND design and in my opinion such extremely rare cases are not a valid argument to make such changes.

If we switch from game.pnd to game.zip like Craig wants...
Yes, this is most certainly a bad idea. Even when extracted, it would work. This would reinforce the idea that extracting it is the proper way of installing and as a consequence decrease the usability. If I read this thread correctly, then not even Apple does this.
 
Back
Top