http://upsilon.cc/~zack/talks/2013/20130320-nylug.pdf

http://upsilon.cc/~zack/talks/2013/20130320-nylug.pdf
Debian: 20 years and counting
Stefano Zacchiroli
Debian Project Leader
20 March 2013
NYLUG — New York Linux Users Group
New York City
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
1 / 38
Free Software & your [ digital ] life
Lester picked up a screwdriver. “You see this? It’s a tool.
You can pick it up and you can unscrew stuff or screw stuff
in. You can use the handle for a hammer. You can use the
blade to open paint cans. You can throw it away, loan it
out, or paint it purple and frame it.” He thumped the
printer. “This [ Disney in a Box ] thing is a tool, too, but it’s
not your tool. It belongs to someone else — Disney. It isn’t
interested in listening to you or obeying you. It doesn’t want
to give you more control over your life.” [. . . ]
“If you don’t control your life, you’re miserable. Think of
the people who don’t get to run their own lives: prisoners,
reform-school kids, mental patients. There’s something
inherently awful about living like that. Autonomy makes us
happy.”
— Cory Doctorow, Makers
http:// craphound.com/ makers/
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
2 / 38
Free Software, raw
foo is cool, let’s install it!
1
download foo-1.0.tar.gz
ñ
2
./configure
ñ
3
4
error: missing bar, baz, . . .
foreach (bar, baz, . . . ) go to 1
until (recursive) success
make
ñ
5
checksum mismatch, missing public key, etc.
error: symbol not found
make install
ñ
error: cp: cannot create regular file /some/weird/path
now try scale that up to 17’000 sources releasing 3’000 new
versions/month
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
3 / 38
Free Software, à point: distributions
ease software management
key notion: the package abstraction
offer coherent software collections
killer application: package managers (& installers)
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
4 / 38
Outline
1
Debian and Wheezy
2
Specialties
3
Derivatives
4
Contribute
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
5 / 38
Debian: once upon a time
Fellow Linuxers,
This is just to announce the imminent completion of a
brand-new Linux release, which I’m calling the Debian Linux
Release. [. . . ]
Ian A Murdock, 16/08/1993
comp.os.linux.development
make GNU/Linux competitive with commercial OS
easy to install
built collaboratively by software experts
1st major distro developed “openly in the spirit of GNU”
FSF-supported for a while
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
6 / 38
1
3
of Debian: the operating system
flagship product: Debian stable
binary distribution
Source packages
Binary packages
30000
completely Free (DFSG)
released every 24 months (≈)
25000
20000
15000
a dozen architectures
archive-wide security support
(3-3.5 years)
renowned for
ports, stability, packaging system,
old hw support, documentation,
smooth upgrades, i18n/l10n, the
testing suite, runs anywhere,
technical policy, package choice, . . .
Stefano Zacchiroli (Debian)
10000
5000
0
2.0
2.1
2.2
3.0
3.1
4.0
5.0
6.0
one of the largest Free Software
porting platforms
Debian: 20 years and counting
New York City
7 / 38
Debian 6.0 “Squeeze” — looking back
released: February 2011
dependency-based boot system
(faster, more robust)
completely Free Linux kernel,
firmware included
GNU/kFreeBSD
large choice of pure blends
ñ
ñ
education, medicine, GIS,
chemistry, . . .
blends.alioth.debian.org
new services:
snapshot.debian.org
backports.debian.org
stable-updates
Most popular GNU/Linux on the Web (32.7%)
overall, 1+ Web server out of 10 (10.8%)
runs Debian — w3techs.com, March 2013
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
screenshots.d.net
ask.debian.net
New York City
8 / 38
Debian 7.0 “Wheezy” — looking forward
multiarch
proper technical way of sharing
packages across archs
ñ 3rd party software, easily
ñ cross-compilation
private cloud deployment
ñ
OpenStack, Xen/XCP, . . .
public cloud support
ñ
Timeline
EC2, Azure, . . .
new archs: armhf, s390x
freeze: June 30th, 2012
desktop: GNOME 3.4, KDE
Plasma 4.8, XFCE, . . .
release: when it’s ready™
ETA: Mar/Apr 2013
upgrades throughout the archive Contribute, today
install/upgrade Wheezy
report bugs (+ patches)
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
9 / 38
1
3
of Debian: the Project
Common goal:
Create the best, Free operating system.
Debian Social Contract
(1997)
100% Free Software
don’t hide problems
give back
priorities: users & Free Software
Debian Constitution
(1998)
Structures and rules of a Free-Software-compatible democracy
Strong motive to join: ≈ 1’000 project members, world-wide
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
10 / 38
1
3
of Debian: the Project (cont.)
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
10 / 38
Demography
Developer’s per country
2012 statistics:
www.perrier.eu.org/weblog/2012/06/06#devel-countries-201206
Take a guess: US’s position?
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
11 / 38
Demography
Developer’s per country
2012 statistics:
www.perrier.eu.org/weblog/2012/06/06#devel-countries-201206
Take a guess: US’s position?
in terms of. . .
n. of (active) project members: #1
(ranking: us, de, fr, uk, ca, au, es)
n. of (active) project members pro capite: #25
(after: most EU countries)
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
11 / 38
1
3
of Debian: the community
Open development
we don’t hide problem
easy to have an impact (just “show me the code!”)
Large amounts of communication
mailing lists
IRC
(a few) Web services(, growing)
ñ
social: @debian, !debian on identi.ca
Large number of tech-savvy users
users help each other, contribute patches, get involved
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
12 / 38
Security
Patches
Standard process
special/optional process
(Manual) package upload
automatic processing
UpStream
Sources
package installation
submission, notification
semi
official repository
BTS
packaging
Security
Team
Legend
maintenance responsibility
exchange help, discussion
human/
group
developer/
maintainer
transitional
state
builds
Security
incoming
incoming
unstable
unstable
experimental
testing
proposed updates
by
RM
power user/
developer
testing
stable-updates
(ex volatile)
frozen
stable
security
updates
proposed updatesby
stable
RM
stable
user/
production
backports
Outline
1
Debian and Wheezy
2
Specialties
3
Derivatives
4
Contribute
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
14 / 38
Debian: one of a kind?
1993 — not many distros back then
20 years later — lots of other distros
(≈300 — DistroWatch)
openSUSE, Linux Mint, PCLinuxOS, Slackware, Gentoo Linux, CentOS, FreeBSD, Arch, Sabayon, Puppy, Lubuntu,
MEPIS, Ultimate, NetBSD, Tiny Core, Zenwalk, CrunchBang, Dreamlinux, Vector, Kubuntu, Maemo, Red Hat, aptosid,
Peppermint, PC-BSD, Chakra, Salix, ClearOS, KNOPPIX, Xubuntu, Super OS, BackTrack, gOS, TinyMe, Zentyal,
EasyPeasy, Frugalware, Clonezilla, Pardus, Meego, OpenBSD, Quirky, PC/OS, Zorin, Debian, SystemRescue, Element,
Unity, SliTaz, Macpup, wattOS, Scientific, Mythbuntu, Slax, DragonFLY, Elive, linux-gamers, 64 Studio, Ubuntu,
mageia, Nexenta, Parisx, NuTyX, GhostBSD, Kongoni, moonOS, LFS, Lunar, Imagineos, Untangle, Fedora, Yellow
Dog, aLinux, Yoper, IPFire, BlankOn, Mandriva, PureOS, FreeNAS, Moblin, Linpus, TurboLinux, blackPanther, . . .
with many differences:
technical choices
support
release management
packaging system
release schedule
user base
target user
look & feel
community
...
How is Debian different?
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
15 / 38
Debian’s special #1: package quality
“ Culture of technical excellence ”
package design: Policy
i.e. “how a package should look like”
package testing: lintian, piuparts,
archive rebuilds (FTBFS), . . .
package maintainers are software experts
no 2nd class packages, all are equal
Debian release mantra
we release when it’s ready
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
16 / 38
Debian’s special #2: freedom
Firm principles: developers and users bound by the Social Contract
1
2
promoting the “culture of Free Software” since 1993
Free the bottom up
ñ
in its software
firmware included !
ñ
in its infrastructure
no non-free web services
no non-free infrastructure
(for users)
(for developers)
Community awareness
users know
users trust Debian not to betray Free Software principles
high bar for software freedom advocates
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
17 / 38
Debian’s special #3: independence
Debian is an independent project
no (single) company babysitting us
living up on:
1
2
donations (money & hardware)
gift-economy
. . . truly remarkable in today “big” distro world
people trust Debian choices not to be “profit-driven”
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
18 / 38
Debian’s special #4: decision making
1
do-ocracy
An individual Developer may make any technical or
nontechnical decision with regard to their own work;
— Debian Constitution, §3.3.1.1
2
democracy
Each decision in the Project is made by one or more
of the following:
1. The Developers, by way of General Resolution [...]
— Debian Constitution, §2
that means:
reputation follows work
no benevolent dictator, no oligarchy
no imposed decisions
by who has money, infrastructure, people, . . .
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
19 / 38
Outline
1
Debian and Wheezy
2
Specialties
3
Derivatives
4
Contribute
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
20 / 38
Interlude — derivatives how to
Free Software 101
Freedom
Freedom
Freedom
Freedom
#0,
#1,
#2,
#3,
to
to
to
to
run the program, for any purpose
study how the program works, and change it
redistribute copies
improve the program, and release improvements
When applied to distros: derived distributions, AKA derivatives
How?
1
2
3
take existing packages and add your extras
patch & rebuild packages as needed
sync periodically
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
21 / 38
Derivatives are game changers
Derivatives have changed the way in which distros are made
derivatives’ focus is on customization
people power is needed “only” for that
everybody wins (if done properly)
derivative: massive reuse of packaging work
“mother” distro: reach out to new public
ñ
users and contributors
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
22 / 38
Debian derivatives
Debian: a base for ≈140 active derivatives
— DistroWatch
Tucunare, LinEx, Inquisitor, Grml, UniventionCorporateServer,
Vanillux, Emdebian, Crunchbang, PureOS, StormOS, Ubuntu,
GNUSTEP, gNewSense, Debathena, Maemo, LMDE, SPACEflight, BCCD,
Bayanihan, semplice, ArchivistaBox, Knoppix, Tails, BlankOn,
AlienVault-OSSIM, DoudouLinux, Vyatta, Symbiosis, VoyageLinux,
Lihuen, LinuxAdvanced, Aptosid, Canaima, siduction,
ZevenOS-Neptune, BOSSlinux, Parsix, AstraLinux, ProgressLinux,
Finnix, SprezzOS, CoreBiz, Epidemic-Linux, MetamorphoseLinux , . . .
Why?
quality & licensing assurances
solid base system
huge package base
the “universal OS”, perfect for customizations
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
23 / 38
A Debian derivative example: Ubuntu
Upstream
started in 2004 by Canonical
target: desktop
Debian derivative
Debian
very popular (15–20x Debian?)
10%
historical/past correlations
main
universe
ñ
ñ
↔
↔
Patch
corporate
community
heavily customized/forked in main
very close to Debian elsewhere
78%
12%
sprouting its own derivatives (≈80)
ñ
. . . as Debian transitive derivatives
Ubuntu
Data for Raring Ringtail, Jan 2013,
main + universe
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
24 / 38
Do you Debian?
Ubuntu appears to be the most customized Debian derivative
other derivatives ⇒ much closer to pristine Debian
Tucunare, LinEx, Inquisitor, Grml, UniventionCorporateServer,
Vanillux, Emdebian, Crunchbang, PureOS, StormOS, Ubuntu,
GNUSTEP, gNewSense, Debathena, Maemo, LMDE, SPACEflight,
BCCD, Bayanihan, semplice, ArchivistaBox, Knoppix, Tails,
BlankOn, AlienVault-OSSIM, DoudouLinux, Vyatta, Symbiosis,
VoyageLinux, Lihuen, LinuxAdvanced, Aptosid, Canaima,
siduction, ZevenOS-Neptune, BOSSlinux, Parsix, AstraLinux,
ProgressLinux, Finnix, SprezzOS, CoreBiz, Epidemic-Linux,
MetamorphoseLinux , Debian, Xubuntu, Linux Mint, Ubuntu
Studio, Mythbuntu, ArtistX, Asturix, Peppermint OS, TurnKey
Linux, Kubuntu, Caixa Mágica, Lubuntu , . . .
if you are running a Debian (transitive) derivative, chances are you
heavily depend on Debian and on its well-being
even if your distro hasn’t told you
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
25 / 38
The distribution pipeline
yesterday . . .
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
26 / 38
The new distribution pipeline
. . . today
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
26 / 38
The new distribution pipeline
. . . today
That’s wonderful!
But.
freedom spreads
should be sustainable
more eyeballs swallow more bugs
to everybody’s benefit
more potential contributors
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
26 / 38
Free Software 101 — redux
Free Software is bigger and more important
than Debian and any other distro or project
1
give back, i.e. reduce patch flow viscosity
2
give credit where credit is due
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
27 / 38
Outline
1
Debian and Wheezy
2
Specialties
3
Derivatives
4
Contribute
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
28 / 38
Donate to Debian
even if completely volunteer-driven, Debian needs resources
hardware for essential services
ñ
archive, buildds, devel. machines, . . .
money for hardware-related services
ñ
guarantees, shipments, hosting, . . .
money to sponsor developer meetings
ñ
ñ
strengthen the community
get work done
Donations
donations: http://www.debian.org/donations
partners program: http://www.debian.org/partners
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
29 / 38
Come to know us — DebConf13
14th annual Debian developer meeting
11–18 August 2013, Vaumarcus, Switzerland
http://debconf13.debconf.org
sponsorship
http://debconf13.debconf.org/become-sponsor.xhtml
donations (with matching fund by Brandorr Group, until April 30th)
http://deb.li/dc13donate
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
30 / 38
Contributing #1 — using Debian
1
test, report, triage, fix bugs
ñ
2
reportbug on your Debian, http://bugs.debian.org
monitor packages you care about
ñ
subscribe on http://packages.qa.debian.org
ñ
try to reproduce bug and provide patches
(eventually, become co-maintainer)
ñ
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
31 / 38
Contributing #2 — adopt orphaned packages
find the ones you use:
apt-get install devscripts ; wnpp-alert
learn packaging with the Debian packaging tutorial
http://www.debian.org/doc/manuals/
packaging-tutorial/packaging-tutorial.en.pdf
or:
apt-get install packaging-tutorial
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
32 / 38
Contributing #3 — join packaging teams
many teams
focused on a programming language or on a field of use
ñ
ñ
Python, Java, Perl, Ruby, OCaml, . . .
Bluetooth, Cloud, Games, Med, Science, VoIP, . . .
excellent way to learn from experienced contributors
http://wiki.debian.org/Teams#Packaging_teams
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
33 / 38
Contributing #4 — hack on the Debian infrastructure
suitable for all programmers
opportunity
ñ
ñ
complex and heterogeneous infrastructure
impact on millions of (indirect) users
services provide link to source and setup instructions in page
footer, e.g.
The source code for wanna-build is available as a Git
repository (Gitweb). [. . . ] sbuild and buildd live together in the
sbuild.git repository (Gitweb) in the buildd-tools Alioth project.
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
34 / 38
Contributing #5 — work on non-development tasks
translation
design (themes, websites)
communication (newsletters & press releases)
events (DebConf, mini-DebConf)
videoteam
documentation
accounting
...
Fundamental activities for the Debian Project to live long and
prosper.
http://wiki.debian.org/Teams
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
35 / 38
Join Debian
choose your commitment:
package maintainer: maintain packages, via sponsoring
Debian Maintainer (DM): upload your own packages
ñ
advocacies required
Debian Project Member (DD): become a Debian “citizen”
ñ
ñ
ñ
ñ
http://nm.debian.org
voting right
upload access to the whole archive
all kinds of contributions equally welcome!
for packagers
Zack’s tips for wannabe Debianers
1
pick a team: http://wiki.debian.org/Teams
2
stay on their mailing list and IRC channel
3
triage bugs, test patches, etc.
4
. . . the rest will come!
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
36 / 38
Want to know more?
on the web
ñ
ñ
http://www.debian.org
http://wiki.debian.org
social media: http://identi.ca/debian
mailing lists: http://lists.debian.org
IRC: #debian-* channels on irc.debian.org
ask me!
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
37 / 38
Thanks!
Questions?
Stefano Zacchiroli
[email protected]
http://upsilon.cc/zack
http://identi.ca/zack
about the slides:
available at
https://gitorious.org/zacchiro/talks/trees/master/2013/20130320-nylug
copyright © 2010–2013 Stefano Zacchiroli
license
CC BY-SA 3.0 — Creative Commons Attribution-ShareAlike 3.0
Stefano Zacchiroli (Debian)
Debian: 20 years and counting
New York City
38 / 38
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement