Difference between revisions of "Application Packaging"

From Amahi Wiki
Jump to: navigation, search
Line 5: Line 5:
 
The fields in the application's form are listed below with their descriptions:
 
The fields in the application's form are listed below with their descriptions:
  
====Name for the Application====
+
= Name for the Application =
 
Official name for the application. This is the name the user sees for the application. It must be unique (no repeats). Make sure the capitalization is the official capitalization of the original application. Examples: WordPress, Zina, Gallery, MediaWiki...
 
Official name for the application. This is the name the user sees for the application. It must be unique (no repeats). Make sure the capitalization is the official capitalization of the original application. Examples: WordPress, Zina, Gallery, MediaWiki...
  
====Version/Release====
+
= Version/Release =
 
Version number for this app. Please specify like this: 7.5, 2.3.4, 0.1, etc. and align the version numbering with the source application being packaged.
 
Version number for this app. Please specify like this: 7.5, 2.3.4, 0.1, etc. and align the version numbering with the source application being packaged.
  
====Logo URL====
+
= Logo URL =
 
Best resolution for the logo is 160x120px or multiples thereof.
 
Best resolution for the logo is 160x120px or multiples thereof.
 
It should have transparent background (for best integration in all themes).
 
It should have transparent background (for best integration in all themes).
 
Valid formats are jpg, png and gif.  
 
Valid formats are jpg, png and gif.  
  
====Screenshot URL====
+
= Screenshot URL =
 
Best resolution for the screenshot is 320x240px or multiples thereof.
 
Best resolution for the screenshot is 320x240px or multiples thereof.
 
It should have transparent background (for best integration in all themes).
 
It should have transparent background (for best integration in all themes).
 
Valid formats are jpg, png and gif.  
 
Valid formats are jpg, png and gif.  
  
====Source URL====
+
= Source URL =
 
URL for a tar.gz/tgz or zip file containing the source of the app.
 
URL for a tar.gz/tgz or zip file containing the source of the app.
 
The source tar.gz/tgz or zip file must expand into a single directory to be supported.
 
The source tar.gz/tgz or zip file must expand into a single directory to be supported.
Line 27: Line 27:
 
You can leave this and the SHA1 fields blank if the app is RPM based.  
 
You can leave this and the SHA1 fields blank if the app is RPM based.  
  
====Source SHA1 checksum ====
+
= Source SHA1 checksum =
 
Integrity checking is done through the [http://linux.die.net/man/1/sha1sum sha1sum program]. This field is the SHA1SUM for the source file (tar.gz/tgz or zip file), obtained by running sha1sum on the source code of the app.  
 
Integrity checking is done through the [http://linux.die.net/man/1/sha1sum sha1sum program]. This field is the SHA1SUM for the source file (tar.gz/tgz or zip file), obtained by running sha1sum on the source code of the app.  
  
====Suggested URL name ====
+
= Suggested URL name =
 
Suggested DNS short-name in the URL for this app. E.g. if you type blog,
 
Suggested DNS short-name in the URL for this app. E.g. if you type blog,
 
the application with install with http://blog for the URL for the application.
 
the application with install with http://blog for the URL for the application.
 
Users will also be able to type blog in the address bar of browsers to reach the app. If this name is not available, a subsequent name will be picked, e.g. blog1.  
 
Users will also be able to type blog in the address bar of browsers to reach the app. If this name is not available, a subsequent name will be picked, e.g. blog1.  
  
====RPM(s)====
+
= RPM(s) =
 
This field is a list, the name of the RPM for the application, *preceded* by any other required RPMs (space-separated or comma-separated). These will be installed via yum in one install command. Note, however, that for reliability reasons, only the main (last) RPM will be removed upon un-install.
 
This field is a list, the name of the RPM for the application, *preceded* by any other required RPMs (space-separated or comma-separated). These will be installed via yum in one install command. Note, however, that for reliability reasons, only the main (last) RPM will be removed upon un-install.
  
====Custom Webapp Options ====
+
= Custom Webapp Options =
 
This field, if filled, allows you to add custom options to this application,
 
This field, if filled, allows you to add custom options to this application,
 
'''if this app has an associated webapp.'''  
 
'''if this app has an associated webapp.'''  
  
====Kind of application====
+
= Kind of application =
 
Kind of application (underlying technology): PHP, Python, RoR, Perl, Plain HTML, ...  
 
Kind of application (underlying technology): PHP, Python, RoR, Perl, Plain HTML, ...  
  
====App home page URL====
+
= App home page URL =
 
Type the URL for the home page or the main site for this application, e.g. http://wordpress.org
 
Type the URL for the home page or the main site for this application, e.g. http://wordpress.org
  
====App Tags====
+
= App Tags =
 
Any tags you want for this app. Useful for search and categories for this application. Better to have more tags at this stage.
 
Any tags you want for this app. Useful for search and categories for this application. Better to have more tags at this stage.
  
====Short Description====
+
= Short Description =
 
This field should contain a description of the application in a single paragraph with a sentence or more in it. Ideally, the first sentence should contain an good description within the first 70 characters of this field. You can include some very limited HTML. Links should include a target="_" in it.
 
This field should contain a description of the application in a single paragraph with a sentence or more in it. Ideally, the first sentence should contain an good description within the first 70 characters of this field. You can include some very limited HTML. Links should include a target="_" in it.
  
====Long Description====
+
= Long Description =
 
This field should contain a full description of the app in several paragraphs. It will be positioned after the short description and should be a follow-through of it. You can include some limite HTML. Links should include a target="_" in it.
 
This field should contain a full description of the app in several paragraphs. It will be positioned after the short description and should be a follow-through of it. You can include some limite HTML. Links should include a target="_" in it.
  
====Install Script====
+
= Install Scripts =
  
====Un-install Script====
+
See the section on [[Application Install Scripts]]
  
 
More to come ...
 
  
 
= Troubleshooting =
 
= Troubleshooting =

Revision as of 19:10, 17 March 2009

The goal of packaging an application is to reduce to zero the technical knowledge required to install and use the application (no database setup, no web server setup, no application configuration, etc.) The actual package install is through a single click from the Amahi user.

Packaging applications is through a simple web form in the contributor's area of amahi.org.

The fields in the application's form are listed below with their descriptions:

Name for the Application

Official name for the application. This is the name the user sees for the application. It must be unique (no repeats). Make sure the capitalization is the official capitalization of the original application. Examples: WordPress, Zina, Gallery, MediaWiki...

Version/Release

Version number for this app. Please specify like this: 7.5, 2.3.4, 0.1, etc. and align the version numbering with the source application being packaged.

Logo URL

Best resolution for the logo is 160x120px or multiples thereof. It should have transparent background (for best integration in all themes). Valid formats are jpg, png and gif.

Screenshot URL

Best resolution for the screenshot is 320x240px or multiples thereof. It should have transparent background (for best integration in all themes). Valid formats are jpg, png and gif.

Source URL

URL for a tar.gz/tgz or zip file containing the source of the app. The source tar.gz/tgz or zip file must expand into a single directory to be supported.

You can leave this and the SHA1 fields blank if the app is RPM based.

Source SHA1 checksum

Integrity checking is done through the sha1sum program. This field is the SHA1SUM for the source file (tar.gz/tgz or zip file), obtained by running sha1sum on the source code of the app.

Suggested URL name

Suggested DNS short-name in the URL for this app. E.g. if you type blog, the application with install with http://blog for the URL for the application. Users will also be able to type blog in the address bar of browsers to reach the app. If this name is not available, a subsequent name will be picked, e.g. blog1.

RPM(s)

This field is a list, the name of the RPM for the application, *preceded* by any other required RPMs (space-separated or comma-separated). These will be installed via yum in one install command. Note, however, that for reliability reasons, only the main (last) RPM will be removed upon un-install.

Custom Webapp Options

This field, if filled, allows you to add custom options to this application, if this app has an associated webapp.

Kind of application

Kind of application (underlying technology): PHP, Python, RoR, Perl, Plain HTML, ...

App home page URL

Type the URL for the home page or the main site for this application, e.g. http://wordpress.org

App Tags

Any tags you want for this app. Useful for search and categories for this application. Better to have more tags at this stage.

Short Description

This field should contain a description of the application in a single paragraph with a sentence or more in it. Ideally, the first sentence should contain an good description within the first 70 characters of this field. You can include some very limited HTML. Links should include a target="_" in it.

Long Description

This field should contain a full description of the app in several paragraphs. It will be positioned after the short description and should be a follow-through of it. You can include some limite HTML. Links should include a target="_" in it.

Install Scripts

See the section on Application Install Scripts


Troubleshooting

NOTE: The application installer logs install process information in your HDA at:

 /var/log/amahi-app-installer.log

So please check that log file for exceptions or other errors if your application fails to install!

Releasing

As soon as you are happy with how the app is installed please contact the core team support amahi.org or in the IRC channel to review and release!