Package Manager + WebServices = ?
One of the things it would be nice to do in future versions of openSUSE (after 10.3) is connect the package management user interface up to webservices such as the openSUSE buildservice api , my package search api , or the software portal api once it is ready.
This would enable users to find and install software whether or not they have previously subscribed their package manager to the relevant repository. Potentially in the event of a dependency resolution failure a webservice could also be used to attempt to find a solution.
This evening I knocked up a quick functional demo YaST module which talks both to the local system package management, and the package search api. This screenshot shows it with search results for “tux” from:
- The local system rpm database
- The package manager’s repository cache
- Webpin search results
and actually installing a package.
This took about 1 hour from conception to the screenshot above. With a little time some quite exciting features could be developed utilising webservices.
The main challenges to making use of webservices from client like this are:
- Defining the API carefully enough so it can remain constant for the lifetime of the product.
- Hosting to cope with the potentially large number of requests arising from integrating web services with client-side software.