Installing a compiler by default

Matt Zimmerman mdz at ubuntu.com
Tue Jun 13 19:46:47 BST 2006


On Fri, Jun 09, 2006 at 04:20:09PM -0400, Matt Galvin wrote:
> On 6/8/06, Matt Zimmerman <mdz at ubuntu.com> wrote:
> > * A common reason to install a new driver on a Linux system is to gain
> >   access to the Internet, so support can be difficult to obtain in such a
> >   scenario
> [snip]
> > * build-essential and linux-headers are already included on Ubuntu CDs, so
> >   they would not occupy more space if installed by default
> 
> These seem a little contradictory to me in a way. Since this stuff is
> on the CD users don't need net access to get them anyway in which case
> they just need the driver which they have to get on their own anyway.

Two points, which perhaps were not clear enough in my original message:

- The packages are available on the live CD, but installing them is not
  straightforward and requires a substantial amount of additional RAM or
  for the user to manually configure a swap partition.

- Users don't know which packages they need

> Sure it is easier for them if it is already installed but if they know
> enough to know they need to compile a driver for some random specific
> device we are already starting to talk about people who can be
> instructed to install the necessary packages (more often then not).

But who will instruct them?  Consider that one common example of a user I'm
trying to represent here is someone who is already familiar with Linux.
They may even have done this many times before on other distributions and
never had to ask for help.  The fact that Ubuntu makes this harder for them
is discouraging.

Hardware vendors today are more often starting to provide Linux drivers in
source code form, and this is a good thing.  It means both that we can more
often ship all of the needed drivers, and it also means that where we don't
yet, users can help each other and themselves.  The vendor often provides
perfectly reasonable documentation for how to install the driver from
source, but if the user is using Ubuntu, the instructions fail.

Example:

http://acx100.sourceforge.net/wiki/ACX#Installing

We ship this driver now, but we haven't always done so, and for any driver,
there will be a window where this is true.  For a user who has built a
driver before, and maybe even for a user who hasn't, those instructions will
solve their problem, but NOT on Ubuntu, and only because we don't install
the tools.

> I very much understand the volatility of the situation and how easily
> people can give up and move on but that is an issue on an individual level
> which I don't think we can address simply by having gcc installed :-/.

I think that the cost is trivial and the benefit, while not a magic bullet
for the problem of users getting Ubuntu working with their hardware, is
substantial.

> > * Most users don't need a compiler
> 
> They don't.

Most users don't need any of the thousands (yes, thousands!) of drivers that
we install, but when the driver is there and Just Works, they certainly are
happy about it.

We currently expend more disk space on a comprehensive set of printer
drivers than would be required to include the necessary tools for building a
kernel driver.

We're not pursuing a minimal system, which only includes things which are
needed by a typical user, but a system which is useful to many, many users,
whether they are Linux enthusiasts or computer novices.  If we can enable
more users at a trivial cost, we do that.

> > * We should solve the same problems in more elegant ways where possible
> 
> +1

And where possible, we will (it isn't mutually exclusive).  The fact is that
there are problems we can solve by implementing this proposal for which we
have no better answer.

> I do not, however, think that the vast majority of users *need* it.

I agree, but that isn't the question at hand.  The question is, will it help
enough users to justify the cost?

We're talking about megabytes versus enabling users.  To my mind, it takes a
lot of megabytes to offset the benefit of one more Ubuntu user who is
thrilled at getting their system up and working to their satisfaction.

-- 
 - mdz



More information about the sounder mailing list