openSUSE:One Click Install Developer
Distribution independent format
The YMP file format used by the One Click Install feature is specified in full at see One click install specification. It allows for instructions for multiple distributions to be included in one YMP file. These are specified in separate groups, like so:
<group distversion="openSUSE 10.3"> ... </group> <group distversion="Fedora 8"> ... </group> <group distversion="Ubuntu 7.10"> ... </group>
This means that it should be possible for all distributions wanting to provide a similar feature to users, to use the same file format. The implementer must map the instructions in the YMP file to instructions for the target package management system.
There are several advantages to using the same format, including:
- One YMP can serve all supported distributions
ISVs can produce one install link on a webpage, or setup file on a CD. There need not be instructions along the lines of "If you are using distribution X use link Y". This makes things easier for users, and makes the feature more attractive to ISVs.
- Reinvention is not good
It is better to improve one format, than create several competing formats which perform the same function but all have different flaws.
- The Build Service already generates YMP files for other distributions. If your distribution includes a client you can easily take advantage of software built for your distribution with the openSUSE build service.
YMP does not support my use case
If this is the case, please discuss it on the openSUSE-softwaremgmt mailing list. (See Mailing_Lists for how to subscribe). If it is really not possible it may be possible to extend the standard to support your use case.
What sample implementations are there?
There is the YaST based client for openSUSE, which is in YaST svn. See the design page for more information about this.
There is also a proof of concept implementation for Ubuntu Source , Video
How can I find out more?
See One click install specification for the full format specification.
Use the openSUSE-softwaremgmt mailing list , or join #yast on irc.freenode.net.