Debian za kulisami

36
Debian, za kulisami Adam Byrtek <[email protected]>

description

"Debian: Behind the Scenes" talk given by Adam Byrtek back in 2003 (in Polish). Quite old, but the overall structure of Debian project haven&#x27;t changed that much since then.

Transcript of Debian za kulisami

Page 1: Debian za kulisami

Debian, za kulisamiAdam Byrtek <[email protected]>

Page 2: Debian za kulisami

Wstęp

O czym wykład nie będzie● Instalacja, konfiguracja, obsługa, administracja

– http://www.debian.org– http://www.debianusers.pl– http://debian.linux.org.pl

O czym wykład będzie (z grubsza)● Historia, sprawy techniczne, filozofia, struktura,

społeczność● Pytania

Page 3: Debian za kulisami

Wstęp, c.d.

Czym jest Projekt Debian?● "Projekt Debian to grupa osób, które wspólnie

zdecydowały się stworzyć wolny system operacyjny"

Zasadnicze różnice● Członkami społeczność ochotników● Projekt niekomercyjny● Tylko otwarte narzędzia● Wspiera różnorodność

Page 4: Debian za kulisami

Początki Debiana

Page 5: Debian za kulisami

Rys historyczny

● Ian Murdock, manifest w roku 1993● Motywacja

– dystrybucja "w duchu Linuksa"– zły stan ówczesnych dystrybucji

● Wsparcie FSF przez pierwszy rok (GNU/Linux)● Nazewnictwo dystrybucji, wersji● Prawidłowa wymowa: "deb ee n"● Pierwszt system pakietów (z zależnościami)● Powołanie SPI

Page 6: Debian za kulisami

Fakty

● Edycja stablina: Woody 3.0, wydana w lipcu 2002r.● 10 lat istnienia, silna pozycja wśród dystrybucji● 11 wspieranych architektur

alpha, arm, hppa, i386, ia64, m68k, mips, mipsel, powerpc, s390, sparc

● Jedyna dystrybucja wspierająca różne jądraLinux, Hurd, BSD

● 1134 osób, 7264 pakietów źródłowych, 11758 binarnych, 318 serwerów lustrzanych

● Polska na piątym miejscu w (nieoficjalnym) rankingu ilości użytkowników

Page 7: Debian za kulisami

Organizacje

● Linux International● Linux Professional Institute● Linux Magazine advisory council● Linux Standards Base● Free Standards Group● SchoolForge● GNOME Foundation advisory board● OASIS: Organization for the Advancement of Structured

Information Standards● Desktop Linux Consortium

Page 8: Debian za kulisami

Oparte na Debianie

● Xandros (dawniej Corel)● Progeny (instalator)● Lindows● Knoppix● i inne...

Page 9: Debian za kulisami

FILOZOFIA

Zasady stanowiące fundament● Debian Free Software Guidelines● Umowa społeczna Debiana● Debian Policies

Page 10: Debian za kulisami

Kontrakt społeczny

● Debian pozostanie w pełni wolny (patrz DFSG)● Spłacimy dług społeczności oprogramowania

wolnodostępnego● Nie będziemy ukrywać problemów● Naszymi priorytetami są nasi użytkownicy i wolne

oprogramowanie● Wsparcie dla programów nie spełniających standardów

DFSG (archiwum non-free)

Page 11: Debian za kulisami

Debian Free Software Guidelines

● Wolna redystrybucja● Dołączony kod źródłowy (i możliwość jego

redystrybucji)● Dzieła pochodne, możliwość ich tworzenia i dystrybucji

na tej samej licencji● Brak ograniczeń integralności kodu● Nie dyskryminuje żadnych osób bądź grup

Page 12: Debian za kulisami

Debian Free Software Guidelines, c.d.

● Nie ogranicza zakresu użytkowania● Licencja musi dotyczyć wszystkich● Licencja nie może dotyczyć wyłącznie Debiana● Licencja nie może 'zanieczyszczać' innego

oprogramowania

● Przykłady: GPL, BSD, Artistic● Bruce Perens i manifest Open Source

Page 13: Debian za kulisami

Debian Policy

● Wytyczne techniczne: najważniejsze zasady gwarantujące spójność pakietów w dystrybucji

● Pełna zgodność z FHS● Niektóre dodatkowe policies

– Perl– Java– Menu– Emacs– ...

Page 14: Debian za kulisami

Konstytucja

● Konstytucja: podstawa formalna● Głosowania● Decyzje podejmuje

– Zgromadzenie Ogólne Deweloperów– Lider Projektu– Komitet Techniczny i/lub jego Przewodniczący– deweloper odpowiedzialny za dane zadanie– delegaci wyznaczeni przez Lidera do danego zadania– Sekretarz Projektu

Page 15: Debian za kulisami
Page 16: Debian za kulisami

Gałęzie

● stable (obecnie woody)gałąź do zastosowań produkcyjnych, zamrożona i gruntowanie przetestowana, do niej pojawiają się poprawki bezpieczeństwa

● testing (obecnie sarge)gałąź najprawdopodobniej pozbawiona ciężkich błędów, ale nie jest to gwarantowane

● unstable (zawsze sid)najświeższe pakiety prosto z pieca, bywają z nimi kłopoty

● experimentalużycie wysoce niewskazane

● Archiwa: main, non-free, contrib

Page 17: Debian za kulisami

System pakietów

● dpkg: nadzór nad bazą pakietów, manipulacja pakietami– zależności– pliki konfiguracyjne– szablony debconf

● APT: zarządzanie pakietami pochodzącymi z różnych źródeł– repozytoria oficjalne, nieoficjalne– priortety, pinning

● Liczne nakładki (dselect, aptitude, synaptic, ...)

Page 18: Debian za kulisami

Struktura pakietu źródłowego

● Oficjalne źródła: foo_x.y.orig.tar.gz● Debianowa łata: foo_x.y-z.diff.gz

– katalog ./debian/*– debian/rules: makefile budujący pakiet

● Z pakietu źródłowego powstaje jeden lub więcej pakietów binarnych:– foo_x.y-z_i386.deb– foo-doc_x.y-z_all.deb

Page 19: Debian za kulisami

Struktura pakietu binarnego

plik DEB

control.tar.gz data.tar.gz

/etc/.../usr/.../var/......

controlconffilesmd5sumspreinstpostinstprermpostrm...

Page 20: Debian za kulisami

Droga pakietu

pakiet

incoming

unstable testing stable

nowa wersja upstream

brak RC,wydanie

upload (podpisany), x.y-z

max 1 dzień (chyba że pakiet nowy)

10 dni (low),brak“excuses”

mirror mirror mirror

NMU

experimental

x.y

Page 21: Debian za kulisami

Edycja stabilna

● "Release when ready", rządzi Release Manager● Zamrożenie testing gdy nie ma już poważniejszych

problemów (RC)● Dokładne testowanie● Wydanie nowej edycji stabilnej● Co jakiś czas edycje poprawiające (najnowsza 3.0r1)● Około roczne wsparcie starej wersji stabilnej

Page 22: Debian za kulisami

Portowanie

● i386 to nie cały świat, deweloper odpowiedzialny za inne architektury

● Ekipa odpowiedzialna za porty● Dobra praktyka programistyczna● Problemy usprawiedliwione w rzadkich przypadkach● System auto-builderów● Non-Maintainer Upload (NMU)

Page 23: Debian za kulisami

Walka z błędami

● BTS: informacje zgłaszane przez email (reportbug preferowanym sposobem)– informacje dostępne publicznie– flagi i waga błędu (RC)– deweloper manipuluje stanem błędu– deweloper ma obowiązek przesyłać wszystkie

poprawki do upstreamu– nie tylko dla pakietów (np. WNPP, debian-policy)

● Od niedawna PTS● Lintian: pomoc dla deweloperów

Page 24: Debian za kulisami

Bezpieczeństwo

● Jeden z priorytetów, Security Team● Publiczne informacje, otwartość (DFSG)● Najlepiej korzystać ze stable● Advisories

[email protected]– http://www.debian.org

● Automatyczny upgrade dla stable przez APTdeb http://security.debian.org/ woody/updates main contrib non-free

Page 25: Debian za kulisami

Pozostałe cechy Debiana

● Instalator● Inicjalizacja systemu (update-rc.d)● Budowanie własnego jądra (make-kpkg)● System menu● System alternatyw● ...

Page 26: Debian za kulisami

Lokalizacja

● Strona WWW● Task "polish", pakiety z polską dokumentacją● Wsparcie locales (teraz już standard)● Instalator● Mapy klawiatury, czcionki● Opisy pakietów● Szablony debconf● DWN (na 7thguard.net oraz stronach Debiana)

Page 27: Debian za kulisami

LUDZIE

● Rdzeń projektu● Baza danych informacji o

deweloperach (vacation)● Od rodziny do społeczności● Od dłuższego czasu (mniej więcej)

liniowy wzrost● Różne cele, spojrzenia, poglądy, równe prawo głosu● Podział na podgrupy, podprojekty● Specjaliści z danych dziedzin (porty, instalator)

Page 28: Debian za kulisami

Mapa lokalizacji deweloperów

źródło: http://www.debian.org/devel/developers.loc

Page 29: Debian za kulisami

POLSCY DEWELOPERZY

Krzysztof KrzyżaniakPawel WięcekGrzegorz ProkopskiMarcin OwsianyPiotr RoszatyckiRobert LuberdaJanusz A. UrbanowiczRyszard Lach

Marek HabersackŁukasz JachowiczMirosław BaranAdam Byrtek

Page 30: Debian za kulisami

Kontakt

● Przede wszystkim email ([email protected])– wykorzystanie PGP, keyring Debiana

● IRC: dyskusje robocze, BSP (serwer freenode)● Listy dyskusyjne (ponad 100 różnych)

– debian-devel, debian-private● Listy ogłoszeniowe

– debian-announce, debian-devel-announce– debian-security-announce

● Debian Weekly News

Page 31: Debian za kulisami

Praca grupowa

● CVS– np. strona WWW

● Alioth, klon SourceForge– projekty których założycielem jest deweloper

Debiana

Page 32: Debian za kulisami

Jak pomóc

● Nie trzeba być deweloperem aby pomagać (sponsoring)● Promować Debiana (i Linuksa jako takiego)● Zgłaszać informacje o błedach i sugestie, korzystać z

testing/unstable● Przeglądać zgłoszenia, przesyłać patche, komentować

bugreporty (PTS)● Pomagać przy tłumaczeniu i tworzeniu dokumentacji

Page 33: Debian za kulisami

Jak wstąpić

● Uwaga na 1 kwietnia!● Proces NM (New Maintainer), lista debian-mentors

– adwokat– przydzielenie AM (Application Manager)– pierwszy kontakt– potwierdzenie tożsamości– filozofia i procedury– zadania i umiejętności– ankieta i podumowanie

Page 34: Debian za kulisami

Jak taki projekt może działać?

● Wartościowi ludzie, "karma" deweloperów● Władze formalne ingerujące jedynie gdy jest to

konieczne● Współpraca i wymiana poglądów przez Internet● Ścisłe reguły i procedury, ale minimum formalizmu● Narzędzia, szczegółowa dokumentacja● Infrastruktura fundowana przez sponsorów

Page 35: Debian za kulisami

Przyszłość

● Sarge (“release when ready”)– GCC 3.2– KDE 3.1– Gnome 2

● Nowy instalator (stary największą zmorą)– pełna integracja z debconf– zróżnicowany interface

● Jeszcze większy nacisk na wielonarodowość● Pełna zgodność z LSB (Linux Software Base)

Page 36: Debian za kulisami

To tylko wierzchołek góry lodowej.

Dziękuję za wysłuchanie wykładu.Proszę o pytania.

W razie czego mój adres:[email protected]