Pandora App Store Suggestion


skeezix said:
Offhand .. Battlejewels, snes9x4d4p, colem, hatari, angband if up, Kronos, Stella, probably about 10 others but screaming kid right now :)

Jeffphone

It's done.
 
Last edited by a moderator:
Craig - you know, a wiki with a page per app, linked from the store.. Or a wiki in the app store for each app (sucks to write a new wiki when 600 exit?) is really a great idea. Centralized random knowledge is win :)

Pull docs out of the pnd - I could make a shscript to do it for you as a starting point if you need

Jeffphone
 
skeezix said:
Craig - you know, a wiki with a page per app, linked from the store.. Or a wiki in the app store for each app (sucks to write a new wiki when 600 exit?) is really a great idea. Centralized random knowledge is win :)

Pull docs out of the pnd - I could make a shscript to do it for you as a starting point if you need

Jeffphone

Love the wiki idea. Each object on the App Store can have its own wiki page, that you can either link to, or perhaps show the content in that frame? No point reinventing the wheel. Having to comment to suggest changes isn't too efficient, in my mind.
 
Last edited by a moderator:
I'm glad to hear that something is in the works.

A few things more occurred to me:

1. Is there any error logging on a PND being run? Something I can troubleshoot with? I ask this because...
2. I still haven't found out why I can't get Heretic or Hexen working. I have the WAD files, but I'm not sure if I'm putting them in the right place. There is no error message to say that the PND wasn't able to run or anything like that so a little feedback would be nice.
3. I've been trying to use the documentation in PNDs, but so far the ones that I've tested come up as non-existent files (Hexen, Heretic, and another I can't remember at the moment) is this because they aren't there or am I doing something wrong?

As soon as I have some time I look forward into digging into the PND system more and maybe putting some apps out there myself.
 
Some original pnd files were not packaged right - ie those :) up to developer to fix 'em :)

A pnd should display it's own errors meaningfully but as a last resort, the pnd system logs to /tmp/pndrun<uniqueid>.out - so probably /tmp/pndrunhexen.pickle.out or something; run it and look around and see, hopefully it'll be enlightening. Oherwise, ask the Dev (pickle I think?) /tmp is in ram btw, no on your sd

He's a busy busy guy with a lot of ports but bug him (or whoever it was) and maybe they can fix the docs in the pnd and add some 'hey you're missing file x' popups or something

JeffPhone
 
skeezix said:
Some original pnd files were not packaged right - ie those :) up to developer to fix 'em :)

A pnd should display it's own errors meaningfully but as a last resort, the pnd system logs to /tmp/pndrun<uniqueid>.out - so probably /tmp/pndrunhexen.pickle.out or something; run it and look around and see, hopefully it'll be enlightening. Oherwise, ask the Dev (pickle I think?) /tmp is in ram btw, no on your sd

He's a busy busy guy with a lot of ports but bug him (or whoever it was) and maybe they can fix the docs in the pnd and add some 'hey you're missing file x' popups or something

JeffPhone

Thanks, I managed to figure out the problem I was having. Just for reference if anyone else has the same problem as me: For both the Heretic and Hexen games when you run them they seem to great both a Heretic and Heretic.pickle (and Hexen and Hexen.pickle respectively). Somehow I missed the regular directory and was putting them in the .pickle directory. I think the .pickle directory might have been created during the first run script that creates that AppData folder but not the actual AppData folder so the actual AppData folder might have been added on subsequent attempts to run the program. I'll test this when I have some time.

Either way, for both games you just put their respective WAD in the base Heretic or Hexen AppData directory (not the .pickle one).
 
Last edited by a moderator:
Locri Epizephyrii said:
For both the Heretic and Hexen games when you run them they seem to great both a Heretic and Heretic.pickle (and Hexen and Hexen.pickle respectively)
There was a bug in minimenu, if I recall correctly, that creates the erroneous empty .pickle directory. Applying hotfix2 should fix it, but you'll have to delete any empty directories that were created as a result.
 
Last edited by a moderator:
Whilst we are on the subject of the app-store, instead of having it as a website based store why not have the store do it the way ubuntu does it?
As a native application? one that knows everything that's installed on the pandora? all packages be it OS elements, Games or applications.
This would also let you know when there is an update, another option would be to do it the way debian does it using dpkg package management system. This way its more integrated into the Pandora's whole OS instead of just being a separate website, which at the moment unless you know about the app-store you wouldn't know how to access it.

If you do continue to keep it as it at least for now why not have a link on the desktop or mini menu (depending what you chose to boot up).
The link could take you straight to the app store to the sign up page (for new Pandora users) so its easy to get going with your Pandora.

I'm just thinking about the user experience, I know its early days on the OS yet, just thought I would contribute my ideas.

what do other people think???
 
milkshake said:
Whilst we are on the subject of the app-store, instead of having it as a website based store why not have the store do it the way ubuntu does it?
As a native application?
This has been brought up many, many, many times before, and the answer is always the same: a web store you can access from anything with a web client; a native client can be written to use the website as its backend; there is no "instead of" because both can coexist peacefully.
 
Last edited by a moderator:
So will there be a native app store for pandora as well as a web based one that can be accessed from any web browser like you said co-existing?
 
milkshake said:
So will there be a native app store for pandora as well as a web based one that can be accessed from any web browser like you said co-existing?
As soon as someone writes one.
 
Last edited by a moderator:
The Pandora AppStore does not expose any kind of repository information so it's not possible to create a native tool for it. It should either implement the repository API (that has been approved by Skeezix and is already implemented by The Box, shameless plug), or someone should write a spider that spiders the site, which would be *horribly* inefficient.

Anyways; tools are in the making for The Box (a command line utility, and I might throw together a GUI tool this weekend) so the future looks bright.
 
Last edited by a moderator:
dflemstr said:
The Pandora AppStore does not expose any kind of repository information so it's not possible to create a native tool for it.
It's just HTML. It's not a major challenge to write an HTML client that submits requests and parses the HTML. That's what I was talking about, not an actual web based API.
 
Last edited by a moderator:
WizardStan said:
dflemstr said:
The Pandora AppStore does not expose any kind of repository information so it's not possible to create a native tool for it.
It's just HTML. It's not a major challenge to write an HTML client that submits requests and parses the HTML. That's what I was talking about, not an actual web based API.
You realize that I don't mean a REST API or anything when I say "repository API". I just mean that there's a downloadable file with information about all of the tracked applications in the webapp.

But you're right, it would be easy to write a spider, but it would be inefficient as I said. Also, good luck parsing this deterministically:
Code:
<li onclick="location.href='../cgi-bin/viewapp.pl?/Game/deathtrap.inf';" style="cursor:pointer;"> 
        	<div class="icon">[img]../apps//Game/deathtrap.pnd.png[/img]</div> 
   	   	   	<div class="desc"><strong>Deathtrap Remix
</strong><br /> 
           						Direct port of Deathtrap Remix from the GP2X. Navi.. 
</div> 
          	<div class="rating">[img]../apps/images/stars.png[/img]<br />  21/6/2010
</div> 
         	<div class="clear"></div> 
 
        [/li]
  • You don't get the whole description
  • You have to trim text segments and parse attributes to get information about e.g. the upload date, and it's all layout specific, so if the page ever changes its layout...
  • To actually get a download link, you have to first go to the "details page" of the package (in lack of a better word) and then actually follow the download button's link to get to the link of the actual file. This means that every time you spider the site, it'll trigger one download (in the downloads count thingie) per tracked file.
  • Preview images are of different sizes (ranging from 1kiB to 1MiB) so that's annoying...
  • All in all, you'd require 112 (at the moment, given that there's 54 files in 4 categories) page requests to get information about tracked files, versus 1 page request if there was a repository API file.
So... there's no *Reason* why *not* to use a repository file, so why not use one? I assume that craigix can make changes to his code after all...
 
Last edited by a moderator:
so the appstore wasn't implemented in PHP/mysql???

why?
 
Pleng said:
so the appstore wasn't implemented in PHP/mysql???
Perl.
Pleng said:
What!? You don't make your app stores in Perl? What would you use otherwise?

On a more serious note, I think that craigix hasn't done any web development before (he asked me questions about e.g. whether you had to surround tag attributes with quotes or not (aka: '<textarea rows=2>...' vs '<textarea rows="2">...', the second version is correct ofc)) and so he's using what he feels most comfortable with, which I can understand.

It has lead to horrible horrible exploits (the kind you see when you don't sanitize your database queries... except craigix doesn't use a DB...) and the implementation is bug-ridden (How many "403 Forbidden", "500 Internal Server Error" and "404 Not Found" responses have you gotten yet?) but he might decide to rewrite the thing later, and then we might see a working implementation.
 
Last edited by a moderator:
Did he not appeal to the community? I'm sure somebody could have made him a nice PHP/MySql solution. I may have even offered myself, though not sure Craig would have wanted to accept my help. That way, with MySql, it would have been easy for any standalone app to query the database.
 
Pleng said:
Did he not appeal to the community? I'm sure somebody could have made him a nice PHP/MySql solution. I may have even offered myself, though not sure Craig would have wanted to accept my help. That way, with MySql, it would have been easy for any standalone app to query the database.
You don't want to expose your database, ever. Or that's at least what I've learned.

As I've said perhaps too many times, I've created an application manager implementation that is ready to be deployed and that is based on a database (MySQL, PostgreSQL, H2 and OracleDB supported) and that exposes a repository file according to the repository file spec, so it's easy to make a GUI front end (I'll make one myself this weekend if I get the time). The full thread is here.

But as you say; Craig doesn't want help from the outside, but sticks to his Perl implementation. The other devs (ED, skeezix, etc) seem to be of a different opinion, though.
 
Last edited by a moderator:
Yawn. Stop pretending the appstrore is broken just because I didn't do it how you would do it.

It's working fine and being used and browsed by a huge number of people daily.

And I don't know, how many errors have you seen? I don't see you reporting them anywhere? And where are these security holes you also seem to be keeping secret (why?).
 
Quick question Craig, have you installed Google Analytics to track the site? Am pretty good with it if you need any help.

Edit:
Just checked and looks like you are not tracking it, again if you need any help in that am here.
 
Back
Top