* All missing packages will be downloaded and installed by directly calling {{Code|rpm -i}};
* All missing packages will be downloaded and installed by directly calling {{Code|rpm -i}};
* Installed packages list will be updated correspondingly.
* Installed packages list will be updated correspondingly.
+
+
== Usage examples ==
+
+
[[Sugar Network]], in attempt to provide GNU/Linux distribution agnostic launches of activities it provides, supports packagekit-backend-presolve users.
+
+
API server provides the following kinds of urls:
+
+
* {{Code|<nowiki>http://api-devel.network.sugarlabs.org/packages</nowiki>}}<br>list all supported platforms;
+
* {{Code|<nowiki>http://api-devel.network.sugarlabs.org/packages/</nowiki><PLATFORM>}}<br>list all supported packages;
+
* {{Code|<nowiki>http://api-devel.network.sugarlabs.org/packages/</nowiki><PLATFORM>/<PACKAGE>}}<br>pre-solved dependency graph for particular package.
+
+
Where:
+
+
* {{Code|PLATFORM}}<br>one of supported packagekit-backend-presolve platforms, e.g., OLPC-13.0.1;
+
* {{Code|PACKAGE}}<br>a name of the particular package.
+
+
In order to support distribution agnostic launches, it supports metadata ''database'' for all packages that are being used as dependencies for activities [[Sugar Network]] provides. Every entry in the ''database'' contains a map of native package names for particular GNU/Linux distributions. So, activities mention only ''database'' entry name as a dependency. Afterwards, on launch side, ''database'' entry name will be resolved to a package name according to local distribution and will be passed to the PackageKit (on XO laptops, packagekit-backend-presolve will be used, on regular platforms, default PackageKit back-end).