| Home · All Classes · Grouped Classes · Annotated · Functions |
Qtopia provides a simplified software installation system in a system binary called packagemanager.
Note that earlier versions of Qtopia for PDAs provided a utility to install packages utilizing the ipkg system. There is no such facility currently in Qtopia. The SXE PackageManager is not a general purpose package installation system
The following features are provided:
Package Manager can be configured with a file called PackageManager.conf located in the <qtopia-root-dir>/devices/etc/default/Trolltech directory. The file has the following format:
[server foo]
URL=http://path/to/foo's/package/feed
[server bar]
URL=http://path/to/bar's/package/feed
[Configuration]
MaxPackagesList=50
MaxPackagesListSize=50000
MaxDescriptorSize=4096
DefaultDomain=untrusted
SensitiveDomains=none
RestrictedOrganizations=Trolltech
In the above example "server foo" an "server bar" are the two default servers provided by the packagemanager. Simply add another similar entrys for more defaults.
The Configuration group is contains settings values.
| Parameter | Purpose |
|---|---|
| MaxPackagesList | Maximum number of packages that will be downloaded from a packages.list |
| MaxPackagesListSize | Maximum size in bytes that will be downloaded for a packages.list. |
| MaxDescriptorSize | Maximum size in bytes that will be downloaded for a qpd descriptor file. |
| DefaultDomain | Default domain that will be applied to packages that do not specify a recognised domain. |
| SensitiveDomain | Packages requesting access to sensitive/restricted domains will not be allowed to install. If there are no sensitive domains set this value to: none. |
| RestrictedOrganization | Defines organizations for settings files which downloaded applications should not use. |
The limitations on the packages.list and descriptor are intended to limit the cost to the user if he/she connects to a server whose packages.list is excessively large.
Settings files for appliations typically specify an organization ( see QSettings). Organizations which are already in use should be specified in the RestrictedOrganizations field. Packages that contain settings files which correspond to this organization won't be able to be installed. This is to moreso prevent 3rd party developers accidentally using an in-use organization rather than for security reasons.
For developmental purposes downloaded applications can be trusted or untrusted. To prevent installation of trusted applications, the Sensitive domain needs to be set.
The file Storage.conf can be used to specify which directory that all packages are installed to.
Package Manager will not present for download or install any packages that are incompatible with the build of Qtopia on the device. There are two measures of compatability, version compatability and device compatability.
The macro QTOPIA_COMPATIBLE_VERSIONS in version.h specifies what versions of Qtopia are considered binary compatible. This is used during package creation so that a package can declare what versions of Qtopia it is known to be compatible with. It is also used during package download so that Package Manager will accept packages it finds that it is compatible with. The macro can be defined as range of versions eg "4.2.0-4.2.3,4.2.5". As long as there is overlap between the versions specified by the package and the those specified by Qtopia, the package will be allowed to install.
In a similar manner QTOPIA_COMPATIBLE_DEVICES in custom.h specifies a set of devices. Packages built for other devices which should run on this device should be listed in this macro. As long as there is overlap between the set of compatible devices declared by a package and that of Qtopia on the device, the package will be allowed to install.
| Copyright © 2008 Trolltech | Trademarks | Qtopia 4.3.1 |