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

Debian za kulisami

Embed Size (px)

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't changed that much since then.

Citation preview

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]