Howto

Howto

This is a HOWTO that describes how commercial/proprietary applications can be added to dappers gnome-app-install. There are basicly three cases:

  • we host the package in multiverse (e.g. java, vmware-player)
  • we host the package in dapper-commercial (e.g. realplay)
  • the package is externally hosted (e.g. omnis)

To add a new package to app-install-data-commercial either apt-get source gnome-app-install-data or branch from bzr http://people.ubuntu.com/~mvo/bzr/gnome-app-install/app-install-data-commercial/. Then add the desktop file of the application to the channels/ subdir and a (optional) icon to channels/icons/. Run debuild (or debian/rules arch-build if you branched from the bzr tree and make sure that you "bzr add"ed the new desktop/icon files).

Always make sure to test if installing the application/adding the channel works. The directory /etc/apt/sources.list.d/ is used to store the sources.list fragments.

Packages in multiverse

Now that we have dapper-commercial proprietary packages in multiverse will probably no longer needed. The following additonal keys needs to be added to the desktop file (change the packagename accordingly).

X-AppInstall-Package=vmware-player
X-AppInstall-Section=multiverse
X-AppInstall-Proprietary=true
X-AppInstall-Supported=true

Packages in dapper-commercial

This is the most common channel for 3rd party applications now. The following additonal keys needs to be added to the desktop file (make sure that you get the correct package name):

X-AppInstall-Package=realplay
X-AppInstall-Channel=dapper-commercial
X-AppInstall-Proprietary=true
X-AppInstall-Supported=true
X-AppInstall-LicenseUri=/usr/share/app-install/channels/dapper-commercial.eula

Packages from a external repository

This case gives the vendors most flexibility, but we need quite a bit of information.

We need:

  • the sources.list deb line to get the pacakge
  • the public key of the Release.gpg signing key of the vendor
  • one or more desktop files for the packages that should be offered (if they have a exec line we offer to start them after install, if not we just show that they are available)
  • a (optional) information-text/eula to display if the user adds the repository (simple html, we use gtkhtml2 to render it)

Get the app-install-data-commercial package. There should be a $channel.key file that contains the public key for that channel, a $channel.list file that contains what goes into /etc/apt/sources.list.d, a optional $channel.eula that is displayed when the channel is added and can be simple html (gtkhtml2 is used as renderer) with links (links open in firefox via gnome-open). The available applications need $appname.desktop files (and optinal matching icons in the subdir icons/).

The applications desktop files contain additional keys:

X-AppInstall-Channel=$channel
X-AppInstall-Package=$packagename_in_that_channel
X-AppInstall-Proprietary=true
X-AppInstall-Supported=true
X-AppInstall-LicenseUri=/usr/share/app-install/channels/$channel.eula

The LicenseUri is optional and can contain any information (but eula is the most common). Note that there are way to add a channel without gnome-app-install (by hand) - so it is possible to install the application without gnome-app-install (and without the eula being displayed).

ThirdPartyPackages/Howto (last edited 2008-08-06 16:34:09 by localhost)