PND Playground (separate place for PNDs to try out)


hmc

Active Member
Joined
Dec 19, 2011
Messages
787
Location
Bavaria, Germany
Hi guys,


Often I download a bunch of new PNDs and want to try each one of them, before putting them into my usual PND place (/pandora/menu on my boot SD card / left slot).


If they are only a few, I put them onto my data SD card's (right slot) /pandora/desktop.


But if I download more than 9 new PNDs for trial, space on the desktop is used up, and some pf the PNDs don't show on the desktop anymore.


So that's not a very big problem, as I can shift around the files manually with some mv commands, but I thought, if there might be a more convenient way to have a "playground", where new PNDs can be tried out.


It could help, if the graphical file manager could directly start PNDs via doubleclick (or "Execute"). Then I could simply open a file manager window, navigate to the "download" directory on the data card (not necessarily in /pandora), and doubleclick a PND to start it.


If I want to keep it, I move it to the common location. If I don't, I delete it.


Questions:


1. Do you have any other ideas, how to implement such a "playground" using existing methods?


2. Couldn't we enable the filemanager in a relatively simple way to execute PNDs by doubleclicking, by registering the MIME type of the PND files, to use /usr/bin/pnd_run to execute the PND?
 
I like the idea of double clicking a pnd to start it, for example if there is more than one application inside the PND then it could give you a choice of which you would like to run, and then of course run it :)
 
Oh yes, I forgot about the feature of PNDs to include multiple applications.


What happens, if you start a PND using "pnd_run filename.pnd"? Does it always start the first application in the package, if no parameters are given? Or does it ask / require interaction?
 
Oh yes, I forgot about the feature of PNDs to include multiple applications.


What happens, if you start a PND using "pnd_run filename.pnd"? Does it always start the first application in the package, if no parameters are given? Or does it ask / require interaction?
I have a python script lying around that does just that...download link. Extract it and then start runpndapp.py <path_to_pndfile> to either start the PND (single executable) or pop-up a pulldown selection dialog (multi executable). You could e.g. associate it with PND files.
 
If you turn the file browser on in the MiniMenu, I'm pretty sure you can use that to launch PND's... My Pandora's gone for repair, so I can't be certain at this moment though
 
I use my desktop pretty much the same way. I've got my icon size reduced so there is an extra row + column of desktop icons. I also turn off the default icons (Home etc) so I can have up to 20 PNDs on the desktop.


That said, it would be nice to launch PNDs from Thunar too.
 
I use PND_utils for this, though I don't know if it includes a way to deal with multiple application PND, other than just running the first application.


- Neelix


Edit: When I first read the subject line, and considering the other thread started by the same OP, my first thought was of a dedicated custom launcher for letting children start approved PNDs... :)
 
Last edited by a moderator:
OP chiming in ;-)


Good thought, Neelix, not intended by me in the first place, but it's an interesting idea.


I thought about Minimenu as a good children's launcher, but certainly it should be configured to hide a lot of stuff (settings and the like).


But maybe we can come up with another way of launching, which is even more suitable for children and easy to maintain by just putting some PNDs in some special directory.


I will look at PND_Utils, the Python script by Caine and MIME type configuration. Maybe I can come up with something useful. Just need to find the time. ;-)
 
As a first attempt, I tried to register a new MIME type for PND files. However, I failed.


How can that be achieved? I read about MIME types, and there should be a directory /usr/share/mime/packages, containing xml files for additional applications' file type associations. But that directory does not exist on the Pandora.


Instead I now went the GUI way: In Thunar file manager, I right-clicked a PND, chose "open with"/"with other application", chose "custom command", entered "pnd_run", checked "use as default".


Now I can open PNDs with pnd_run by right-clicking them, choosing "open with" / "pndrun" (the underscore in the command is eaten by Thunar and interpreted as a keyboard shortcut ;-).


However, I would prefer a more general way, which makes right-clicking unnessecary, but enables PND launch via doubleclick.


Any ideas how to get into the mime type database and add PND and a custom association to a script?


Thanks!
 
I've been looking into how PND_utils does this.


first it copies its mime.xml file (defining the type itself) to /usr/local/share/mime/packages/ (creating this folder if need be) and corrects the permissions, then it runs



Code:
update-mime-database /usr/local/share/mime/

then it copies the pqr.desktop file (which associates the type with the PND Quick Run script) to /usr/share/applications/ and corrects the permissions then runs



Code:
update-desktop-database /usr/share/applications/


pqr itself allows you to specify what file to run within the PND, but assumes the default application, if you don't specify a command line.


The code which looks up the PXML and finds the default exec command is in scripts/.pnd_quick.functs within the PND_utils PND so theoretically you could modify and overload that file with code to prompt for the application and run that if there is more than one, then (re)install PND_utils.


- Neelix
 
Last edited by a moderator:
Back
Top