shared application installation notes

Eric Olson eolson at mcs.anl.gov
Tue Oct 28 16:59:24 CST 2003


Official documentation is on its way, but here's an update on installing 
shared applications in 2.1.2.  The most work you should have to do is 
create a .app file to describe what agpm.py (ag package manager) should 
register and install for you.  
( agpm.py is just a new name for RegisterApp.py )

Sections in this e-mail:
1) How to install a package.
2) How to uninstall a package.
3) An example .app file.
5) Extra detail on where things are stored.
5) Known issues.


1) How to install a package:
agpm.py -z zipfile.zip
  where zipfile contains a .app file and any of your own application 
files.

An alternative is
> agpm.py -f appfile.app
It will search for your application files in the current directory.


2) How to uninstall a package
> agpm.py -u -z zipfile.zip
OR
> agpm.py -u -f appfile.app
OR
> agpm.py -u -n name


3) An example .app file:
    The "files" line lists any files you want copied to the application 
install/working directory (see next section for the location of that 
directory).  The "Open" line is the command that gets executed to start 
your application.  %(appUrl)s is a command-line argument that will be 
replaced by the current shared application url.  There are other possible 
replacements such as %(venueUrl)s for the current venue url, but these 
will be explained in the real documentation.


[application]
name = Sample Application
mimetype = application/x-ag-sample-application
extension = sampleapplication
files = SampleApp.py, SampleAppHelper.py

[commands]
Open = %(python)s SampleApp.py %(appUrl)s


4) Extra detail on where things are stored:

( Note: ApplicationDatabase and SharedApplications are in 
${HOME}/.AccessGrid on linux, and \Documents and 
Settings\<user>\Application Data\AccesssGrid on windows. )

- Entries for your application are placed in the ApplicationDatabase 
text file.
- Any files you specified in the .app file are copied to 
SharedApplications/<appname>/
- When you restart your venueclient after registering an application, you 
should see the entry under the menu: Venue-> Add Application-> newappname.


5) Are there any known issues?

- On linux, the permission bits are not preserved, so if your application
executes one of your files directly (such as a binary file), you may need 
to do a chmod +x filename, where the filename is located in 
SharedApplications/<appname>/   ( See previous topic for location of 
SharedApplications directory. )

- What if I have a large program that I don't want copied into the 
installed directory? (not critical, but this has been asked twice)

You can install a startup script that will launch your application.  
Realize this may be difficult depending on your experience.  You need 
to figure out how your startup script will know the application's 
location, and how to launch (and cleanly shutdown) your application.





More information about the ag-dev mailing list