Announcement: One Click Installer

2007-08-06 Thread Krzysztof Lichota
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:
http://ola-os.com/inne/one-click-installer/oci/scribus-unsigned.oci";>Install
Scribus

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
front

Re: Announcement: One Click Installer

2007-08-06 Thread Conrad Knauer
On 8/6/07, Krzysztof Lichota <[EMAIL PROTECTED]> wrote:

> 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.

Individual DEB files installed with Gdebi provide this sort of thing
currently (e.g. try  http://www.getdeb.net/)

> - 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.

It sounds like this step should be improved then; maybe a GUI tool to
add the most popular repositories? (e.g. I added Kubuntu's
"kde-latest", Medibuntu, Wine, Miro, Opera, VirtualBox and Google)

> - 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.

In my experience, almost everything I ever wanted has been available
as a DEB.  Its only rarely that I can only download a TAR of what I
want and rarer still to only find a RPM.  For Ubuntu, I think that
this isn't a problem...  unless a user is still in Windows mindset and
wants to run EXEs ;)  Then there's Wine (though they will likely soon
figure out that DEBs work much better with their system :)

> 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.

Solve this! :-)

Seriously, this is the problem that needs a good solution.

> 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.

Ack!

What you are describing, as a general practice rather than as the
occasional procedure for a DEB, is a return to the ugly and slow way
of doing things that I left far behind in Windows.  Please no!
Synaptic (and similar, e.g. gnome-app-install) in Ubuntu work so
nicely with so little fuss.

> 3. Package management applications are too bloated with features and
> contain thousands of applications.

Generally speaking, if a program has good defaults, a user won't mess
with more advanced features...  Synaptic doesn't seem overly complex
to me though.  Maybe I am just very used to it :)  Also, complaining
that there are too many apps in Synaptic is like complaining that
there are too many books in a library! ;)

"Wer die Wahl hat, hat die Qual." As they say...

> 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).

Do remember that "average users" will probably NOT install an
alternative media player...  Though for basic software installation I
think a site like http://ubuntuguide.org gives some good tips.

> Users want to have
> some context - other users comments, grades, etc.

gnome-app-install partially does this (popularity stars).  If they
really want to research a program, users should look on the forums or
do a Google search.  Grading apps can be rather subjective, ne?  Also,
think of how big the comments database for the ~20K Ubuntu packages
would be unless you really moderated it... in which case it would look
rather like the current description I suspect :)  Maybe suggest adding
such features to the packages.ubuntu.com website though...

> 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).

[...] http://www.flickr.com/photos/annoiato/275701797/

I would clearly describe that as a bug, yes, but something like DDTP
should be the solution.

> 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.

This is just an extension of point #1...

> 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.

Um...  how does this affect Ubuntu?  I note, later on in your e-mail
that you have in mind basically a front-end for just about any package
management system.  That's one way towards getting a unified Linux
package management system, though Mark Sh

Re: Announcement: One Click Installer

2007-08-06 Thread Kevin Fries
On Mon, 2007-08-06 at 13:03 -0600, Conrad Knauer wrote:
> On 8/6/07, Krzysztof Lichota <[EMAIL PROTECTED]> wrote:
> 
> > 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.
> 
> Individual DEB files installed with Gdebi provide this sort of thing
> currently (e.g. try  http://www.getdeb.net/)

Or even better:

http://digg.com/linux_unix/Ubuntu_Install_applications_from_Internet_with_a_single_click?t=7711876

This solution works first of all within the existing distribution tools,
and second without trying to turn Linux into Windows.  We all know how
well the first Windows turned out, and the OP does not get that point.
People are seeking something better than Windows.  Many will tell you
otherwise, but when pushed, I think overall satisfaction with Windows is
right up their with the cell phone companies... Nobody is happy, but
don't feel that Linux or Mac are realistic choices...  Resolving that
misconception about the usability of Linux is how we solve Bug #1.

Bug #1 is NOT, and I can not emphasize this enough, _NOT_ going to get
fixed by offering the same old broken solution.  Many of the problem
with the Windows environment is caused by their software installation
process (beyond the scope of this thread).  The article above in my
opinion offers the hope of a better solution, though this cookie is not
completely baked.  It allows users to seek better solutions in the
forums, where they are more likely to be looking for one.  It allows
software distribution and support to be integrated, so that support
leads to solution.  This is not the same old broken system.  It also
encourages uses to discuss these things in forums, where developers can
get a getter indication of what people are looking for.  There are lots
of wins here.

I would love to see a similar setup for the repositories also.  However,
we need to proceed with caution here.  If a user has to maintain too
many repositories in order to get all their software, that becomes more
difficult than anything on the market now.  Imagine Oracle maintains
their own repository, so does google, so does apache, etc.  Having a few
repositories actually decreases problems.  Look at the Fedora
situation... different sets of repositories that are incompatible with
one another.  If we really want to move backwards on bug #1, lets
encourage lots and lots of people to go out and build their own
repositories without some sort of approval process.

Just my thoughts on this matter.

-- 
Kevin Fries
Senior Linux Engineer
Computer and Communications Technologies, Inc.
a division of Japan Communications, Inc.


signature.asc
Description: This is a digitally signed message part
-- 
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss


Re: Announcement: One Click Installer

2007-08-06 Thread Greg K Nicholson
Conrad Knauer:
> On 8/6/07, Krzysztof Lichota <[EMAIL PROTECTED]> wrote:
>> 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.
> 
> Solve this! :-)
> 
> Seriously, this is the problem that needs a good solution.


The apt protocol ( https://wiki.ubuntu.com/AptFirefoxFileHandler ) will 
fix this.


-- 
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss


Re: Announcement: One Click Installer

2007-08-06 Thread Chris Wagner
Every time someone comes up with a new, more-intuitive way to install
software on Linux, there seems to be more negative comments about it
than positive.  I recall similar comments when Gdebi was proposed, but
it seems to have gone over okay.

I only see one major flaw in Krzysztof's model: security.  (Am I wrong?
Are there other serious problems?)  Unfortunately, that's arguably the
most important issue.  Rather than shrug off this solution, though, why
not come up with a mechanism for making it (at least somewhat) secure?
A user already has the means to screw up her system, using things like
Automatix and Gdebi.  "One Click Installer" may make it that much
easier, but you can't lock the liquor in a cabinet forever; at some
point the curious child must be taught how to use it responsibly.

Krzysztof's solution seems like the quickest possible way to have a
cross-distro (even potentially to non-Linux OS's) method for installing
software.  Of course, the ideal solution would involve all Free Software
platforms using a common, all-in-one package management system, but that
day is a bit far off.

Installing software via the Web is not just a bad habit created by
Microsoft Windows; it makes sense.  What isn't a good idea, is
installing random bits of software from untrusted sources.  Even as an
advanced GNU/Linux user, I would venture to say that I *usually*
discover new software via the Web.  For me, a system like "One Click
Installer" is just an extra convenience (it often just saves me the time
of "apt-get install ...").  For most people, however, it could be the
difference between understanding how to get along with Linux, and not.

-- 
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss


Re: Announcement: One Click Installer

2007-08-06 Thread Wouter Stomp
On 8/6/07, Greg K Nicholson <[EMAIL PROTECTED]> wrote:

>
> The apt protocol ( https://wiki.ubuntu.com/AptFirefoxFileHandler ) will
> fix this.
>
>

Can anyone tell if this will be implemented in time for Gutsy?

Wouter.

-- 
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss


Re: Announcement: One Click Installer

2007-08-06 Thread Krzysztof Lichota
Conrad Knauer napisał(a):
>> 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.
> 
> Individual DEB files installed with Gdebi provide this sort of thing
> currently (e.g. try  http://www.getdeb.net/)

Yes, but many applications consist of more than one package.
Example from the top of http://www.getdeb.net/:
  X-Moto 0.3.2
Download: xmoto (1.0 Mb) , xmoto-data (6.9 Mb)

User must install 2 packages, in proper order, or the installation will
fail. It also does not support security upgrades as you install deb, not
repository.

By combining http://www.getdeb.net/ with One Click Installer you can
create great online software repository, exactly what I hope to become
true.
So thanks for pointing it out, I will contact them to see if they are
interested.


>> - 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.
> 
> It sounds like this step should be improved then; maybe a GUI tool to
> add the most popular repositories? (e.g. I added Kubuntu's
> "kde-latest", Medibuntu, Wine, Miro, Opera, VirtualBox and Google)

Average user is not interested in "repository" concept, as I tried  to
explain in my post. They do not want understand why it is needed and
they should not be forced to. It is technical detail.

>> - 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.
> 
> In my experience, almost everything I ever wanted has been available
> as a DEB.  

You miss my point. There are DEBs for Debian based distros, RPMs for
RedHat based distros, ebuilds for Gentoo, etc. User does not want to be
shown a page: "please choose your packaging format: deb, rpm, ebuild,
etc." because he does not understand what is the difference and he does
not care. It should work.

>> 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.
> 
> Solve this! :-)
> 
> Seriously, this is the problem that needs a good solution.

Well, I have solved it in One Click Installer - it automatically adds
repository and key, then installs selected packages.

>> 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.
> 
> Ack!
> 
> What you are describing, as a general practice rather than as the
> occasional procedure for a DEB, is a return to the ugly and slow way
> of doing things that I left far behind in Windows.  Please no!
> Synaptic (and similar, e.g. gnome-app-install) in Ubuntu work so
> nicely with so little fuss.

You are free to continue using Synaptic if it suits you, One Click
Installer files do not affect that.

>> 3. Package management applications are too bloated with features and
>> contain thousands of applications.
> 
> Generally speaking, if a program has good defaults, a user won't mess
> with more advanced features...  Synaptic doesn't seem overly complex
> to me though.  Maybe I am just very used to it :)  Also, complaining
> that there are too many apps in Synaptic is like complaining that
> there are too many books in a library! ;)

I am not complaining that there are too many books, but that it is not
convenient for users to find them according to their criteria. And no -
adding search with Boolean operators is not what I am talking about, it
just isn't usable by average users.

> Do remember that "average users" will probably NOT install an
> alternative media player...  Though for basic software installation I
> think a site like http://ubuntuguide.org gives some good tips.

Exactly. They install apps recommended in software reviews, guides, by
people in forums, etc.

> 
>> Users want to have
>> some context - other users comments, grades, etc.
> 
> gnome-app-install partially does this (popularity stars).  If they
> really want to research a program, users should look on the forums or
> do a Google search.  Grading apps can be rather subjective, ne?  

Exactly. There should be more than one place where apps can be graded
with different angles - sites for begginers, sites for French users
(with taking into account quality/lack of translation), sites for
graphic designers, etc, etc.

> Also,
> think of how big the comments database for the ~20K Ubuntu packages
> would be unless you really moderated it... in which case it would look
> rather like the current description I suspect :)  

That's why it should be split between many web sites, each with
different scope, users, moderators, etc.

>> 4

Re: Announcement: One Click Installer

2007-08-06 Thread Krzysztof Lichota
Kevin Fries napisał(a):
> On Mon, 2007-08-06 at 13:03 -0600, Conrad Knauer wrote:
>> Individual DEB files installed with Gdebi provide this sort of thing
>> currently (e.g. try  http://www.getdeb.net/)
> 
> Or even better:
> 
> http://digg.com/linux_unix/Ubuntu_Install_applications_from_Internet_with_a_single_click?t=7711876
> 
> This solution works first of all within the existing distribution tools,
> and second without trying to turn Linux into Windows.  We all know how
> well the first Windows turned out, and the OP does not get that point.
> People are seeking something better than Windows.  Many will tell you
> otherwise, but when pushed, I think overall satisfaction with Windows is
> right up their with the cell phone companies... Nobody is happy, but
> don't feel that Linux or Mac are realistic choices...  Resolving that
> misconception about the usability of Linux is how we solve Bug #1.

I am not suggesting to create installers like in Windows. If you look at
 the architecture of One Click Installer, it leverages good ideas in
Linux software management (packages with software for easy
uninstallation without leaving rubbish, dependencies, repositories,
signing, etc.) to create ease of use similar to Windows installers or
even better (one link to click for all versions, not a few).

As for apt:// protocol idea, it has the same problem as Klik -
centralization. In order to have flourishing software ecosystem we have
to provide third party application developers, packagers and users
opportunity to provide their own installation repositories, which suit
their needs.

Krzysztof Lichota




signature.asc
Description: OpenPGP digital signature
-- 
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss


Re: Announcement: One Click Installer

2007-08-06 Thread Krzysztof Lichota
Greg K Nicholson napisał(a):
> Conrad Knauer:
>> On 8/6/07, Krzysztof Lichota <[EMAIL PROTECTED]> wrote:
>>> 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.
>> Solve this! :-)
>>
>> Seriously, this is the problem that needs a good solution.
> 
> 
> The apt protocol ( https://wiki.ubuntu.com/AptFirefoxFileHandler ) will 
> fix this.

Yes, this is similar to what I want to achieve, but:
- it does not provide information for different distributions and other
systems than APT
- it does not provide multiple versions for different distribution versions
- it does not provide localized application descriptions

And I do not think such amount of information should be put in URLs, it
is just too big. URLs should not hold data.

Krzysztof Lichota



signature.asc
Description: OpenPGP digital signature
-- 
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss


Re: Announcement: One Click Installer

2007-08-06 Thread Krzysztof Lichota
Chris Wagner napisał(a):
> Every time someone comes up with a new, more-intuitive way to install
> software on Linux, there seems to be more negative comments about it
> than positive.  I recall similar comments when Gdebi was proposed, but
> it seems to have gone over okay.
> 
> I only see one major flaw in Krzysztof's model: security.  (Am I wrong?
> Are there other serious problems?)  Unfortunately, that's arguably the
> most important issue.  Rather than shrug off this solution, though, why
> not come up with a mechanism for making it (at least somewhat) secure?

I completely agree the security is important.

One Click Installer files can be signed using GPG key. If the file is
unsigned, user is asked if he wants to proceed with explanation why he
should not install not signed file and the default option is to cancel
installation.

In first implementation I have completely disallowed unsigned files, but
it would prevent creating installation files by anyone else than
distribution developer with access to its signing key. So I dropped it
as too strict. But it is easy to provide, for example, a configuration
option to forbid installing unsigned files and provide way for advanced
users to skip it.

If the file is signed, but the key is not trusted (see below), the
installation stops with verification failure.

The trust delegation is currently based on keys used by apt. If the key
is trusted by apt to sign repositories, then it is trusted to sign
installation files. In particular, keys used to sign Ubuntu archive are
trusted as signers of installation files, so Ubuntu developers can sign
installation files they think are trustworthy and they will be shown as
trusted by Ubuntu users of One Click Installer.

The rationale behind that is that if key is trusted to install packages,
then these packages can do anything during installation or later as they
run with root privileges during installation.

The undesirable effect of this scheme is that if you install repository
of some person you delegate the trust to create installation files to
him. If someone can come up with better scheme, I would be happy to
implement it in One Click Installer.

> Krzysztof's solution seems like the quickest possible way to have a
> cross-distro (even potentially to non-Linux OS's) method for installing
> software.  

Exactly, One Click Installer file can hold any kind of installation
data, even for FreeBSD, Solaris or any other OS.


> Of course, the ideal solution would involve all Free Software
> platforms using a common, all-in-one package management system, but that
> day is a bit far off.

Right. We have to do whatever we can until this day comes :)

> Installing software via the Web is not just a bad habit created by
> Microsoft Windows; it makes sense.  What isn't a good idea, is
> installing random bits of software from untrusted sources.  Even as an
> advanced GNU/Linux user, I would venture to say that I *usually*
> discover new software via the Web.  For me, a system like "One Click
> Installer" is just an extra convenience (it often just saves me the time
> of "apt-get install ...").  For most people, however, it could be the
> difference between understanding how to get along with Linux, and not.

I couldn't agree more.

Thank you for your balanced and insightful post :)

Krzysztof Lichota



signature.asc
Description: OpenPGP digital signature
-- 
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss


Re: Announcement: One Click Installer

2007-08-06 Thread Scott Kitterman
On Monday 06 August 2007 17:09, Chris Wagner wrote:
> Every time someone comes up with a new, more-intuitive way to install
> software on Linux, there seems to be more negative comments about it
> than positive.  I recall similar comments when Gdebi was proposed, but
> it seems to have gone over okay.

Gdebi at least uses packages intended for use in the Debian package management 
system (personally, I think it's a mistake for it to be installed by default, 
but that's another arguement).

What I have yet to see is an automated way to make packages that consistently 
and reliably work across multiple architectures on diverse hardware. 

The issue isn't making installation easy, the issue is the reliability and 
usability of the underlying packages that have not been designed for our 
packaging system.  I could see extending the gdebi UI to support multiple 
package installation, but before we get into making foreign packages easy to 
install, I think we should figure out if they are actually going to work 
reliably enough.

Scott K

-- 
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss


Re: Announcement: One Click Installer

2007-08-06 Thread Greg K Nicholson
Krzysztof Lichota:
> Greg K Nicholson napisał(a):
>> The apt protocol ( https://wiki.ubuntu.com/AptFirefoxFileHandler ) will 
>> fix this.
> 
> Yes, this is similar to what I want to achieve, but:
> - it does not provide information for different distributions and other
> systems than APT
> - it does not provide multiple versions for different distribution versions
> - it does not provide localized application descriptions
> 
> And I do not think such amount of information should be put in URLs, it
> is just too big. URLs should not hold data.

For a start, as has been suggested elsewhere, it should be renamed to a 
generic “install” URI scheme, rather than apt. That's just cosmetic.

Perhaps all that other information doesn't need to be included in the 
URL. The installation system could be backed up by a remote library that 
provides all the extra information. (Let's call this the Remote 
Universal Metadata Library idea.) The URL would only have to contain the 
name of the package that should be installed (and perhaps optionally a 
version range).

Once the installation of a particular package/version has been 
initiated, the user's computer would request all the other information 
about that package/version from the remote library, a service running on 
some web server that's known to be trusted. The user's computer would 
have a list of library servers (provided by the distro, like the default 
repositories' addresses are); if one is unavailable it would try 
another. Encryption and so on would be applied as appropriate (and for 
anything else I fail to mention, assume the best solution you can think of).

All library servers would be completely interchangeable as far as the 
user's computer is concerned. Either they would all be mirrors of each 
other and offer exactly the same information, applicable to all distros 
(and not necessarily restricted to Linux); or each server would hold a 
subset, and would (somehow) be able to redirect the user's computer to 
whichever server holds the appropriate subset for any case.

I imagine that the major Linux vendors would each host a library server, 
SourceForge might have one too, as would some or all of the servers that 
currently provide mirrors for open source projects' downloads. Remember, 
we're only dealing with short snippets of metadata, not the installers 
themselves, so this isn't a universal repository of all software — just 
a universal repository of all software installation metadata (ideally).

I assume something like Bazaar (with which I'm only cursorily familiar) 
could make it possible for all the servers to talk to each other 
peer-to-peer-style, so that even tiny distro makers can share their 
metadata with the big guys. And there'd be some magical system to ensure 
that no single library server gets pummelled harder than it has to — 
Mozilla's Bouncer tool might be in the right area.

The user's computer would send to the library server the name (and 
version range) of the package to be installed, plus all the relevant 
details of the user's computer, presumably as a user agent string. The 
relevant details are probably (at least) distro, distro version, 
hardware architecture, user language/locale(s) and preferred 
installation method(s)—apt, rpm, source, whatever.

The library server would know what the current version of the package is 
for that distro/version/architecture/language/install-method 
combination, what repositories and gpg keys need to be added (if 
applicable) and so on. If a package goes by different names in different 
distros, the library would know which names are equivalent and offer the 
right one for the user's distro. For distros that don't use a packaging 
system (such as those from Redmond and Cupertino), the library should be 
able to return the URL of an appropriate webpage or (distinctly) an 
installer.

I'm visualising this library as a vast table with program versions down 
the left, and distro/version/etc combinations across the top. At the 
intersections are instructions like:

http://bar.example.com";>foo

Sometimes there are several instructions:

http://bar.example.com";>foo 
http://baz.example.org/gpgkey

For Windows (and similarly for OS X) the instructions might be:

  http://quux.example.net  
 http://quux.example.net/monkeys.exe 
 

(That's choice for the user's computer; it needn't necessarily be shown 
to the user every time.) Gentoo might use:

http://cheese.example.org/src.tar.gz

(or however Gentoo works.)

The library server would send back — possibly in a simple XML dialect, 
as above — all the information the user's computer needs to be able to 
install the software with no help from the user, although the user would 
probably be shown what was about to happen and would have to confirm the 
installation. Of course, the UI implementation would be up to each distro.

So, given the name of a piece of software you want to install, and the 
details of the computer you want to install it on, this 

Re: Announcement: One Click Installer

2007-08-06 Thread Greg K Nicholson
Krzysztof Lichota:
> Conrad Knauer napisał(a):
>> I note, later on in your e-mail
>> that you have in mind basically a front-end for just about any package
>> management system.  That's one way towards getting a unified Linux
>> package management system, though Mark Shuttleworth comments that "so
>> many divergent packaging systems in the free software world (and I
>> include the various *bsd's) is a waste of time and energy"
> 
> I couldn't agree more. But I cannot solve the problem of common
> packaging format, so I am not trying to. The problem of common packaging
> format is important from application developer view, because they have
> to create many packages. I am trying to solve the problem from user
> point of view, so that he does not have to choose from that plethora of
> formats/distributions/versions.

Drive-by href: http://autopackage.org/


-- 
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss


Re: Announcement: One Click Installer

2007-08-06 Thread Chris Warburton

On Tue, 2007-08-07 at 02:22 +0100, Greg K Nicholson wrote:
> Drive-by href: http://autopackage.org/

I think Autopackage has the wrong idea. From a technical perspective
most package formats contain the same data, so converting between them
should be easy. The actual problem is the contents of the packages, the
data and metadata itself. A Debian package for Debian might not work in
Ubuntu so making another format isn't the point. Forgetting tricky
technical issues like compiler and library versions and focusing on the
metadata; there is no point depending on 'foo' if that functionality is
provided by 'bar' in another distro. This is the key area to
standardise, after that is done then tools like alien could improve
significantly and upstream packaging would be more feasable (and if
upstreams are packaging their own software then those would become the
standard across distros, hopefully creating a feedback loop to keep
things running smoothly). Of course I am not saying distros should not
do their own packaging, but if upstreams release files compatible with
the quality-assured distro files then those who don't rely on strict QA
are free to use whatever packages they find.

As a side note I think that the idea of a list of third party repos is
flawed. It doesn't solve us-and-them issues, it just creates an
us-and-these-and-them situation. The solution needs to be implementable
by anyone, decentralised, robust and generic.

Thanks,
Chris Warburton


-- 
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss