The simplest installation file supports a single language version only, requires no special capabilities, installs a fixed list of files to the phone and is self-signed. Self-signed and unsigned packages are considered to be 'unknown', and may or may not be installable, depending on the phone's security policy. The process to create such a file is:
Create a text file with extension .pkg
. This file needs
to specify:
the vendor name(s) in each language listed,
a single non-localised (global) vendor name,
a package header, which consists of the package's name (optionally translated into the different languages supported), a package UID, and the application's major, minor version numbers and a build number.
a list of the files to install and their destination on the target phone.
Invoke CreateSIS on the
package file to create and sign the installation (.sis
) file.
The PKG file shown below is provided in
examples\HelloWorld\HelloWorld.pkg
.
; List of languages supported
&EN
; List of localised vendor names
%{"Symbian Software Ltd."}
; Single, non-localised (global) vendor name
:"Symbian Software Ltd."
; Installation header.
#{"Minimal application"},(0xE8000091),1,0,0
; Four files to install for the minimal application
"HelloWorld.exe"-"!:\sys\bin\HelloWorld.exe"
"HelloWorld.rsc"-"!:\resource\apps\HelloWorld.rsc"
"HelloWorld.mbm" - "!:\resource\apps\HelloWorld.mbm"
"HelloWorld_reg.rsc" - "!:\private\10003a3f\import\apps\HelloWorld_reg.rsc"
Notes
Comments are preceded by a semi-colon. These are ignored by CreateSIS.
The package header (preceded by a hash character) defines the packages name, the package UID (0xE8000091), major and minor version numbers (1 , 0) and a build number (0).
The final four lines list the files located on the PC, and their destination on the phone, separated by a minus sign. Note that 'data caging' imposes strict rules about file locations on the phone. See here for details.
To create the self-signed installation file,
HelloWorld.sis
, invoke CreateSIS on the package file. As no
private key and certificate are provided, CreateSIS will generate them, and use
them to sign the SIS file. As long as the application requests no system
capabilities, self-signed SIS files may be installable,
depending on how the phone's installation policy has been configured by the
phone manufacturer.
The package UID is used to uniquely identify the package. It may be requested in the same way as an application's third UID, through https://www.symbiansigned.com, or for convenience it may use the same value as the application's third UID.
By default the contents of .sis
files are compressed,
although this can be prevented by using the NOCOMPRESS
option in
the PKG header. Specifying NOCOMPRESS
is not normally recommended
unless you are installing files that are already compressed, for example JPEGs.
The package's major and minor version numbers are required for
version control (e.g. AppName 3.1
specifies a major version 3, and
minor version 1).
The build number should generally be incremented whenever the component is rebuilt.
To allow the target drive to be selected by the user at install
time, !
is used as the target drive letter. To prevent the user
from being able to select the target drive, $
can be used, to
denote the system drive.
If directories in the target installation path do not exist, they are automatically created by the installer.