Package-Header

The Package-Header includes package names for each of the supported languages, a unique identifier of the package, major version, minor version, build number of the package and package options.

Syntax

#{"Package name for language 1", ...}, (package-uid), major, minor, build-number[, package-options, ...]

For example:

#{"MyApp-EN", "MyApp-FR", "MyApp-Zulu"}, (0x1000001F), 1, 2, 3, TYPE=SA
 
  • Package Name: Identifies the package in the installation dialogs and in the list of installed packages. The package name is language-dependent. The number of package names must equal the number of languages specified in the languages line and must be in the same order.

  • Package UID: Identifies the package when installing, upgrading and removing the package. All package files require a UID.

    The UID, known as the package UID or pUID specified in the package header of an application (SISAPP) uniquely identifies the package. The installation fails if another installed package has the same pUID, unless the second package is a patch or an upgrade. The package creator is responsible for ensuring that the pUID is correctly allocated to ensure uniqueness. It can have the same value as the SID of an executable installed by the package.

    Package UIDs and SIDs are allocated through https://www.symbiansigned.com.

    If the pUID is in the protected range, (less than 0x80000000), or if the package is installing an EXE whose SID is in the protected range, the package must be trusted.

  • Major, Minor versions: Specifies the major and minor version numbers of the package and are required for version control. For example, AppName 3.1 specifies major build 3, and minor build 1.

  • Build Number: Specifies the build number of the application.

  • Package-Options: Specifies the various options that can be provided within package header. See the Package-Options section for details.

Package-Options

The following table lists the Package-Options that can be used:

Abbreviation Name Description
 

TYPE=Package-Type

Specifies the Package-Type that identifies the purpose of the package.

SH

SHUTDOWNAPPS

Shuts down all applications on the device.

Software installer terminates running applications on the device as needed during the installation process, so this flag is deprecated.

NC

NOCOMPRESS

Files are not compressed within the SIS file.

Package-Type

The following table lists the Package-Type that can be used within Package-Options:

Abbreviation Name Description

SA

SISAPP

Specifies the package that contains an application. This is the default type. For details on upgrading applications, see Upgrade Types.

SP

SISPATCH

Specifies a package that patches an existing component. It can be uninstalled separately from the package it patches. For more details, see Upgrade Types.

PU

PARTIALUPGRADE

Specifies a package that partially upgrades an existing component. This is a variation of SA in that files which are present in the original package but not specified in the PU package are not removed. For more details, see Upgrade Types.

PA

PIAPP

Specify this type to create applications that are preinstalled on media cards.

PP

PIPATCH

Specify this type to create patches that are preinstalled on media cards.

The following table explains the RU flag:

Abbreviation Name Description

RU

ROMUPGRADE

This flag is required with the SA package type to carry out a full upgrade of an application in ROM. For details on using the RU flag for an upgrade of type SA, see Upgrade Types.

Notes:

  • All numbers can be hexadecimal.

  • These options are mutually exclusive.