Announcement: One Click Installer

Krzysztof Lichota krzysiek at lichota.net
Mon Aug 6 17:01:35 UTC 2007


I would like to share with you the project I have been working for some
time now which I think could help solving bug #1.

The problem:
- Users coming from Windows (and in general beginners) want installation
of applications to be as easy as possible. Download, Next, Next, Done
kind of experience.
- If you start talking about command line and adding keys, repositories,
etc. you have lost them. They will not understand and they will not
_want_ to dig into technical details.
- There is plenty of packaging formats used on Linux and average users
do not want to know the differences between them, they just want to
install application.

Package installation applications (Synaptic, Adept) and apt repositories
do not solve the problem for the following reasons:
1. Repositories must be added manually and this exceeds skills of
average Windows user. Keys must be added also and repositories updated.
Too many steps, too difficult.
2. Users are not used to going to package management application to
install application. They want to click link on application web page,
download, run, Next, Next, etc.
3. Package management applications are too bloated with features and
contain thousands of applications. Even with categories it is hard to
find application that the user needs (think "I want a movie player"),
especially if they do not know name and are presented with 10
applications which they do not know and all do the same or differ in
technical details (e.g. uses Xine or uses GStreamer). Users want to have
some context - other users comments, grades, etc.
4. Application descriptions are in English (I know about DDTP, but AFAIK
it does not work). Many users do not know English and they want
information about applications in their language, on native portals with
applications (like localized Tucows).
5. User must know that he is using APT with DEB packages. As there are
separate APT repositories for each distribution version and user must
also know what distribution he is using which version, choose
appropriate repository, etc.
6. If user is using some other distribution than Debian-based he is even
 more in pain, he has to know what package format to use (DEB, RPM, TGZ,
Ebuild, ...), what channel (APT, yum, Yast, ZMD, etc.), what distro,
which version.

Now compare it to installation on Windows - user goes to Google, types
"movie player download" or browses some application catalog like Tucows,
selects one with best reviews, downloads installer (in most cases he has
to choose between installer for Windows 98/ME and installer for Windows
2000/XP), 3 clicks and he is done.

So, here is my shot at solving this problem - One Click Installer
(http://code.google.com/p/one-click-installer/).

The idea is similar to this implemented in
https://wiki.ubuntu.com/ThirdPartyApt, but with broader scope
(supporting all distributions, not only Debian-based) and more features.

Installation file can contain definitions for multiple distributions,
multiple channel types (APT, YUM, etc.). There is a possibility to
specify  package sets in installation file to provide similar experience
as in Windows installers (for example adding option to install
documentation, fonts, language support, etc.).
You can see example at this screenshot:
http://one-click-installer.googlecode.com/svn/trunk/screenshots/en/mplayer-signed/step3-package-selection.png

User is presented with single link which spawns installation wizard for
any supported distribution. For screenshots of wizard see:
http://code.google.com/p/one-click-installer/wiki/Screenshots

Link can be put anywhere: on web page (online catalog, application home
page), blog ("look what cool application I have found", forum ("install
this application to get wireless connection management"), etc.

Installation file format supports localization of descriptions which are
shown to user when installing. Installation tool itself can also be
localized using .po files.

Using One Click Installer it is possible to turn the whole huge (and
nightmare for average users) installation page for Scribus
(http://www.scribus.net/index.php?name=Sections&req=viewarticle&artid=4&page=1)
into one link:
<a
href="http://ola-os.com/inne/one-click-installer/oci/scribus-unsigned.oci">Install
Scribus</a>

See:
http://code.google.com/p/one-click-installer/wiki/ExampleInstallationFiles

A few words about implementation:
- Installation file can be signed using distribution GPG key to provide
safety against tampering and confirm that it is not malware. For now,
keys added using apt-key are allowed as signing keys. There is also a
possibility of creating unsigned installation files or signing using
untrusted key (as a verification measure or when key is distributed
using some other way).
- Tool is implemented in Python.
- Currently tool works on Ubuntu (should work also on Debian) using APT
repositories, file format can handle also other software channels and
package formats.
- Tool frontend is written in Qt, but due to strict separation of
frontend and backend it should be quite easy to implement other
frontends (especially Gtk).

If you can want to help with development (adding other frontends,
backends and porting to distributions), please write to project mailing
list: one-click-installer-devel at googlegroups.com
File format specification could especially benefit from look of some XML
guru, as I am definitely not XML expert.

Please forward this announcement to people who might be interested in
creating cross-distribution installation file format (in Debian, Suse,
Mandriva, etc.). Having common, simple installation wizard will be
benefit for everyone.

One Click Installer has been developed for my Ubuntu derived distro:
Olá! OS (http://ola-os.com - in Polish) and is used to provide my users
with online software catalog. I want to contribute it back to Ubuntu
community as part of thanks for creating such great distro :)

Comments welcome

	Krzysztof Lichota


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 254 bytes
Desc: OpenPGP digital signature
URL: <https://lists.ubuntu.com/archives/ubuntu-devel-discuss/attachments/20070806/da3ff2f6/attachment.sig>


More information about the Ubuntu-devel-discuss mailing list