Customizing Debian
“Fork Yours with Debian GNU/Linux”

Benjamin Mako Hill

mako@debian.org

http://mako.yukidoke.org

Ubuntu

Debian Project

Software in the Public Interest

The World of Debian Customizers

There are 115 distributions derived from Debian.

AbulÉdu • Adamantix • AGNULA GNU/Linux Audio Distribution • ANTEMIUM Linux • Arabbix • ARMA aka Omoikane GNU/Linux • ASLinux • Auditor Security Linux • Augustux • B2D Linux • BEERnix • Biadix • BIG LINUX • Bioknoppix • BlackRhino • Bluewall GNU/Linux • Bonzai Linux • BrlSpeak • Càtix • CensorNet • Clusterix • ClusterKNOPPIX • Condorux • Damn Small Linux • Danix • DebXPde • eduKnoppix • ERPOSS • ESware • Euronode • FAMELIX • Feather Linux • Flonix • Vital Data Forensic or Rescue Kit (FoRK) • Freeduc-cd • GEOLivre Linux • Gibraltar Firewall • GNIX-Vivo • Gnoppix Linux • gnuLinEx • GNU/Linux Kinneret • GNUstep Live CD • grml • Guadalinex • Helix • Hiweed Linux • Impi Linux • Julex • K-DEMar • Kaella • Knoppix Linux Azur • Kalango Linux • KANOTIX • KlusTriX • knopILS • Knoppel • Knoppix • Knoppix 64 • Knoppix STD • KnoppiXMAME • KnoppMyth • Kurumin Linux • LAMPPIX • Libranet GNU/Linux • LIIS Linux • LinEspa • Linspire • Linux Live Game Project • Linux Loco • LinuxDefender Live! CD • Linuxin • LiVux • Local Area Security Linux (L.A.S.) • Luinux • Luit Linux • MAX: Madrid_Linux • Mediainlinux • MEPIS Linux • Metadistro-Pequelin • MIKO GNYO/Linux • Morphix • Munjoy Linux • Nature's Linux • NordisKnoppix • OGo Knoppix • Oralux • Overclockix • Quantian • Penguin Sleuth • PHLAK • PilotLinux • Progeny Debian • Rays Linux • ROSLIMS Live CD • Salvare • Santa Fe Linux • Shabdix GNU/Linux • Skolelinux • Slavix • Slix • Slo-Tech Linux • Soyombo Mongolian Linux • SULIX • Tablix on Morphix • Tilix Linux • TupiServer Linux • Ubuntu Linux • UserLinux • WHoppiX • X-evian • Xfld • Xandros Desktop OS • Xarnoppix • ZoneCD • Zopix

The World of Debian Customizers

The most recognizable include:

Knoppix

Linspire/Lindows

MEPIS

Ubuntu

UserLinux

Xandros

Debian: Quick Facts

Debian contains loads of packages;

Debian consists of 1,000 official volunteers;

Debian includes the work of many companies and organizations;

Debian is 100% free software;

Debian has very good package management;

But What Is Debian?

Is Debian the code, people, principles, politics, policy?

?

One Size Does Not Fit All

To Fork or Not To Fork

Tonight's Case Studies

Ubuntu

UserLinux

Internal CDDs: Skolelinux, Debian-NP

Goals of Customizers Overview

The goals and problems of customizers include:

Custom software selection

Custom software configuration

Software replacement

Custom installers/environments

Plus:

Gain from others work

Share your work

Selecting Packages

Task packages

Metapackages

Debtags

Package Selection Details

Meta-Packages

Source: userlinux-emterprise-desktop

Section: userlinux

Priority: optional

Maintainer: Bruce Perens <bruce@perens.com>

Standards-Version: 3.5.8

Package: userlinux-desktop

Architecture: all

Depends: bash, cupsys, cupsys-client, eclipse-sdk, epiphany, evolution, gaim,

gfax, ghfaxviewer, gimp, gimp-data-extras, gimp-manual, gimp-perl, gimp-python,

gimpprint-doc, gimpprint-locales, gnome, gnome-control-center, gnome-core,

gnome-cups-manager, gnome-games, gnome-media, gnome-system-monitor, gnome-system-tools,

gnome-terminal, gnome-utils, gthumb, hylafax-client, hylafax-doc, hylafax-server,

kernel-image-2.6-386, mozilla, myspell-dictionary, ooqstart-gnome, openoffice.org,

openoffice.org-help, openoffice.org-hyphenation, openoffice.org-mimelnk,

openoffice.org-thesaurus, pan, planner, rhythmbox, samba, smbclient, smbfs, tomcat4,

totem, usermin-postgresql, wine, wine-doc, wine-utils, winesetuptk, x-ttcidfont-conf,

xchat

Description: Installs the UserLinux desktop software packages.

UserLinux is a logical subset of the Debian system. Installing this package

will cause all of the software packages that are a standard part of the

UserLinux desktop system to be installed.

Debtags

Configuring Packages

Debconf preseeding

Low-priority (or unasked) Debconf Questions

cfengine tweaks

Debconf Examples

cfengine Tweaks

editfiles:

{ $(ftp)/etc/passwd

AutoCreate

EmptyEntireFilePlease

AppendIfNoSuchLine "ftp:x:$(uid):$(gid):Anonymous FTP:$(ftp):/bin/sync"

}

{ $(ftp)/etc/group

AutoCreate

EmptyEntireFilePlease

AppendIfNoSuchLine "ftp::$(gid):"

}

{ $(ftp)/etc/shadow

AutoCreate

EmptyEntireFilePlease

AppendIfNoSuchLine "ftp:NP:6445::::::"

}

Replacing Packages

Shared package repositories

Version Control Magic

Creating Custom Installers/Environments

Examples:

Progeny uses Anaconda, the Redhat installer, to install their Debian based system.

Knoppix, Morphix, etc. are "Live" distributions meant to be run off a CD.

Can't We All Just Get Along

Where Things Are Going

While the technical solutions are evolving, the poltical and social problems are still largely unaddressed.

With LinEx, Ubuntu, Knoppix and others, we are already seeing derivatives of derivatives.

Summary

Problem: Debian is great -- But can't be everything everyone wants it to be at once.

Answer: Balance the global and local in creating infrastructure to:

Select software

Configure software

Replace software

Install and run software in different ways

Result:

A complex and varied set of approaches.

A single united goal of inter-project and inter-distribution collaboration and Total World Domination.

2004-06-03T08:52:33