Archive for the 'Web' Category

Yet Another Open Source Software Portal

I recently came across yet another free and open source software portal, this on is from the United Nations Educational, Scientific and Cultural Organization (UNESCO). A lot of good software listed on this site, stuff you wouldn’t normally get quickly by searching Google or SourceForge.net. One of the interesting pieces of web based management softwares I came across was SAHANA.

SAHANA runs on a LAMP/WAMP server and enables fast setup and web based management of disaster recovery networks. Features include a missing person registry, organization registry, request management system, camp registry, volunteer management, inventory management, and situation awareness. SAHANA has been used in several recent disasters for various applications. More can be found on its website.

Link
UNESCO Free & Open Source Software Portal

HowTo - Make Your Own WebApp

This is just a quick howto on making your own WebRunner/Prism webapp file. This is a very simple process and shouldn’t take more than a few minutes of your time. There are a couple of tools you need however, to get started.

  • a file archiver - my favorite is 7-zip, but you can just as easily use any archiving program that is compatible with zip files
  • a text plain text editor

For more advanced webapps, a more advanced context highlighting text editor can be helpful for coding custom style sheets or adding javascript customizations. And don’t forget icons! I use a combination of Paint.Net and @icon sushi (which covers everything but MacOS, which is because I can’t seem to find software for Linux or Windows to accommodate icons for it - recommendations anyone?).

The No “.webapp” WebApp

There are several ways to open webpages with Prism or WebRunner. The first and easiest is to install Prism, then create a link to it on your desktop. Then change that link adding the option “-uri” and the url of the page you want to open. Here are two examples:

Windows:
c:\your\path\to_prism\prism.exe -uri http://web_url_of_site
c:\your\path\to_prism\prism.exe -uri c:\location\of\local_file

GNU/Linux:
/your/path/to_prism/prism -uri http://web_url_of_site
/your/path/to_prism/prism -uri /location/of/local_file

This method does not require a webapp file, it just launches the website or file you specify. This means, no icons are required, but you also don’t get to add any custom themes or js files. This would be a really good method to use with applications like Wiki on a Stick (woas).

WebApp Bundles

The second method is also pretty straight forward (until you make it complex by adding more functionality). For the most basic webApp bundle you only need to create one file; the webapp.ini. Here’s the content from the example webapp.ini on the Prism wiki:

[Parameters]
id=unique-app-id@unique-author-id.whatever
uri=http://[the-url-what-you-want-to-connect-to]/
status=yes
location=no
sidebar=no
navigation=no

The “id” parameter is required to be unique. I’ve been using my website’s url (as most others have done as well) preceded by the name of the site, but any unique identifier will work. The “uri” parameter is required and will accept both url of the target website as well as local file paths. Everything after that appears to be optional and the values show are the defaults. These remaining parameters are options to tell Prism whether or not to show certain GUI elements (”status” = status bar;”location” = address bar;”sidebar” = sidebar;”navigation” = well, quite frankly, I have no idea - maybe navigation buttons that haven’t been implemented yet?).

The next step after saving your changes to this document, is to use your archiving program to zip up this file creating, as an example, “your_webapp.zip”. Replace the “zip” extension with “webapp” and you’re ready to roll! Now either double click the webapp file or you can launch the webapp from the command line thusly:

Windows:
c:\your\path\to_prism\prism.exe -webapp your_webapp_bundle

GNU/Linux:
/your/path/to_prism/prism -webapp your_webapp_bundle

For more advanced webapps you can add icons, scripting and style sheet support (see the Prism page for more details).

Happy coding!

Prism
Prism/WebApp Bundle
Prism/Scripting
Prism/Styling
7-Zip
Paint.Net
@icon sushi
Wiki on a Stick

WebRunner now Prism, Whatever - Here’s How To Make An Extension Compatible With At Least One…

UPDATE AGAIN! 080611
I’ve made a new post on this subject cause it’s easier to update by adding new posts instead of updating this one. Enjoy!

Update!!
Had to add a comment to the replacement code below in order for this to work.

080404 Update!!
Yet again, code changes for new versions and what not.

Looks like Mozilla has added WebRunner to it’s Mozilla Labs line up and changed the name to Prism. From what they say, it’s going to be a cross between an open version of Adobe Air and Microsoft Silverlight and a localized lancher for web applications. Which, by my definition, is what utility computing is supposed to be like. Prism is currently for Windows only (they’d better hurry up with a Linux version), but it runs the same webapp files and also has added style sheet support - among other things - so you can style your webapps your way.

Anyway, I’ve been kind of discouraged by the lack of extension availability for WebRunner (and XulRunner for that matter). You’ll find in another of my posts a webapp for accessing the WebRunner extensions panel. Using this webapp, you can add new extensions (by installing or dropping them onto the panel), but at this point, adding extensions will fail because the version checking mechanism for WebRunner/XulRunner. To get around that, you need to change the extension’s compatibility information. These instructions will not work for every extension and your results will vary…

I recommend you find a smaller extension, download it and make the following changes:

  1. Open the extension package (you can open it with 7-zip, ALzip, Winzip or any other archive program that works with zip files.
  2. Extract and open the install.rdf with a text editor, I’d recommend Wordpad if your using windows.
  3. Locate and change the following or something that looks like the following (this will vary by extension, but look for the Firefox description section - and you may find that you have to remove all references to all other Mozilla programs that the extension is compatible with for this to work):

<!--Firefox-->
<RDF:Description RDF:about="rdf:#$djS7s"
em:id="{ec8030f7-c20a-464f-9b0e-13a3a9e97384}"
em:minVersion="0.8"
em:maxVersion="2.0.0.*" />

To:

<!--Webrunner-->
<RDF:Description RDF:about="webrunner"
em:id="
webrunner@webapps.org"
em:minVersion="0.1"
em:maxVersion="10.0" />

or (again it will depend on which way the developer implemented the Firefox description):

<em:targetApplication>
<!--Webrunner-->
<Description>
<em:id>webrunner@webapps.org</em:id>
<em:minVersion>0.1</em:minVersion>
<em:maxVersion>10.0</em:maxVersion>
</Description>
</em:targetApplication>

If you’re using Prism, change to the following:

<RDF:Description RDF:about="prism"
em:id="
prism@developer.mozilla.org"
em:minVersion="0.1"
em:maxVersion="10.0" />

or

<em:targetApplication>
<Description>
<!--Prism-->
<em:id>prism@developer.mozilla.org</em:id>
<em:minVersion>0.1</em:minVersion>
<em:maxVersion>10.0</em:maxVersion>
</Description>
</em:targetApplication>

4. Then save the rdf file and add it back into the xpi archive.
5. You should be ready to install the extension using the Extensions.webapp

I found this parts of this bit of magic on Alex Sirota’s website along with the tip to check in the applicaiton.ini file for any XulRunner application’s ID. If you run into errors, then something is probably malformed in the rdf file so check that first. I won’t be much help in trouble shooting, and I’m not about to offer support for other peoples extensions on an unsupported application, but if you have problems, post a comment and I’ll give editing the rdf a go myself.