Installing a compiler by default

Matt Zimmerman mdz at ubuntu.com
Thu Jun 8 17:44:17 BST 2006


I would like to propose that, beginning in Edgy, Ubuntu desktop systems
(both live and installed) should, by default, include the set of packages
necessary to compile simple C programs and Linux kernel modules.

My reasoning is based on the following points:

 * Linux systems have traditionally shipped with gcc

 * The most common way to obtain a new driver for a Linux system is
   to compile it from C source code

 * 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

 * A great deal of distribution-agnostic documentation assumes the
   availability of gcc

 * Users who are new to Ubuntu have no idea how to install the necessary
   packages for building a kernel module

 * build-essential and linux-headers are already included on Ubuntu CDs, so
   they would not occupy more space if installed by default
 
 * An excessive amount of RAM is needed to install build-essential and
   linux-headers in the live CD environment, and we only have enough space
   for them either in preinstalled form (for the live session) OR packaged
   form (for the installed system), not both

Some arguments against this approach include:

 * Most users don't need a compiler

 * If they have already compromised a system, worms can use a compiler to
   help propagate themselves and launch attacks (and if one is installed by
   default, this is a more appealing technique for targeting Ubuntu systems)
 
 * We should solve the same problems in more elegant ways where possible

I'm interested in hearing more opinions one way or the other, especially
from beyond the developer community.

-- 
 - mdz



More information about the ubuntu-devel mailing list