[ powrót ] [ Spis treści ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ A ] [ dalej ]


Podręcznik dla nowych opiekunów pakietów Debiana
Część 2 - Pierwsze kroki


2.1 Wybierz swój program

Prawdopodobnie wybrałeś już pakiet, który chcesz zbudować. Pierwszą rzeczą, którą powinieneś zrobić, to sprawdzić, czy pakiet znajduje się już w dystrybucji, przy pomocy programu aptitude. Jeśli używasz dystrybucji 'stabilnej', zapewne najlepiej przejść do strony wyszukiwania pakietów.

Jeśli pakiet już istnieje, to cóż, zainstaluj go! :-) Jeśli przypadkiem jest on osierocony (jego opiekunem jest "Debian QA Group"), to być może możesz się nim zaopiekować.

Sprawdź na stronie Pakietów Rokujących i Wymagających Pracy i stronach powiązanych ostatni status adopcji/osierocenia pakietu.

Jeśli możesz zaadoptować pakiet, pobierz jego źródła (poleceniem apt-get source nazwa_pakietu) i przetestuj go. Niestety ten dokument nie zawiera informacji na temat adopcji pakietów. Za to nie musisz męczyć się, rozpracowując działanie danego pakietu, gdyż ktoś już wcześniej dokonał wstępnych ustawień. Ale czytaj dalej, bo poniższe porady będą z pewnością wartościowe również dla Ciebie.

Jeśli pakiet jest nowy i chciałbyś, żeby został włączony do dystrybucji Debiana, wykonaj poniższe instrukcje:

Oczywiście powyższe zalecenia to po prostu zabezpieczenia, które mają na celu uchronić Cię przed gniewem użytkowników, gdy zrobisz coś źle w jakimś demonie z ustanowionym identyfikatorem użytkownika... Gdy nabierzesz już więcej doświadczenia, będziesz mógł pakować nawet takie programy, ale nawet najbardziej doświadczeni deweloperzy konsultują się na liście dyskusyjnej Mentorów Debiana, gdy mają jakieś wątpliwości. Ludzie stamtąd z pewnością chętnie pomogą.

Więcej informacji na te tematy znajdziesz w dokumencie Developer's Reference.


2.2 Weź program i wypróbuj go

Pierwszą rzeczą, którą powinieneś zrobić, to odnalezienie i pobranie oryginalnego pakietu. Zakładam, że już masz plik źródłowy, który pobrałeś ze strony domowej jego autora. Źródła z wolnym oprogramowaniem dla Uniksa są zwykle rozprowadzane w formacie tar/gzip, z rozszerzeniem .tar.gz. Pliki te na ogół zawierają podkatalog o nazwie program-wersja, w którym znajdują się wszystkie pliki źródłowe. Jeśli źródła wybranego przez Ciebie programu są rozprowadzane w innego rodzaju archiwum (na przykład pliki kończące się na ".Z" lub ".zip"), to wypakuj je przy pomocy odpowiedniego narzędzia. Gdy nie jesteś pewien, jak zrobić to poprawnie, zapytaj (po angielsku) na liście dyskusyjnej Mentorów Debiana (wskazówka: temat `file archive.extension`).

Jako przykładu będziemy używać programu o nazwie `gentoo' - menadżera plików dla systemu X Windows, który wykorzystuje bibliotekę GTK+. Zwróć uwagę, że program ten jest już zapakowany i znacznie się zmienił od czasu, gdy pisany był ten tekst.

W swoim katalogu domowym utwórz podkatalog o nazwie 'debian', 'deb' lub jakkolwiek uważasz za właściwe (np. po prostu ~/gentoo/ jest w tym przypadku dobrym rozwiązaniem). Umieść w nim pobrane archiwum i rozpakuj je (za pomocą `tar xzf gentoo-0.9.12.tar.gz`). Upewnij się, że nie ma żadnych błędów, nawet jakichś nieistotnych, ponieważ najprawdopodobniej pojawią się problemy w czasie rozpakowywania w systemach innych użytkowników, których narzędzia do wypakowywania mogą, ale nie muszą, ignorować takie nieprawidłowości.

Teraz w katalogu tym powinieneś mieć podkatalog o nazwie `gentoo-0.9.12'. Wejdź do niego i dokładnie przeczytaj znajdującą się tam dokumentację. Zwykle powinny tam być pliki o nazwach README*, INSTALL*, *.lsm lub *.html. Odszukaj w dokumentacji instrukcji, jak poprawnie skompilować i zainstalować program (najprawdopodobniej będą one zakładać, że chcesz zainstalować program do katalogu /usr/local/bin; ale Ty nie rób tak, więcej o tym w rozdziale Instalacja w podkatalogu, Rozdział 3.1).

Proces instalacji różni się w zależności od programu, ale wiele nowoczesnych programów jest dostarczanych ze skryptem `configure', który konfiguruje źródła pod Twoim systemem i sprawdza, czy spełniają one warunki niezbędne do poprawnej kompilacji. Po zakończeniu konfiguracji wykonywanej za pomocą polecenia `./configure`, programy są na ogół kompilowane przy użyciu komendy `make`. Niektóre z nich pozwalają także na użycie `make check`, który uruchamia procedurę samosprawdzającą. Instalacja w katalogu przeznaczenia następuje zwykle po wydaniu polecenia `make install`.

Teraz spróbuj skompilować i uruchomić program, aby upewnić się czy działa on prawidłowo i nic się nie psuje w czasie instalacji lub wykonywania.

Możesz też zazwyczaj użyć polecenia `make clean` (lub lepiej `make distclean`), aby posprzątać w katalogu, w którym kompilowałeś. Czasem można nawet posłużyć się poleceniem `make uninstall`, które usunie wszystkie zainstalowane pliki.


2.3 Nazwa pakietu i jego wersja

Powinieneś rozpocząć pakowanie z zupełnie wyczyszczonym (ang. pristine - pierwotnym) katalogiem źródłowym, ewentualnie ze świeżo rozpakowanymi źródłami.

Aby prawidłowo zbudować pakiet, musisz tak zmienić nazwę oryginalnego programu, żeby występowały w niej tylko małe litery (o ile występują tam jakieś wielkie litery). Powinieneś także przenieść katalog ze źródłami do katalogu <nazwa_pakietu>-<wersja>.

Jeśli nazwa programu składa się z więcej niż jednego wyrazu, to skróć ją do jednego wyrazu albo utwórz skrót. Na przykład program "John's little editor for X" powinien się nazywać johnledx, jle4x lub jakoś tak. Pamiętaj jednak, aby jego długość nie przekraczała jakiejś rozsądnej wartości, np. 20 znaków.

Sprawdź także dokładnie wersję programu (będzie ona włączona do nazwy pakietu). Jeśli do oznaczenia jego wersji autor nie użył konwencji X.Y.Z, ale posłużył się datą, to Ty również możesz jej użyć do określenia wersji pakietu, poprzedzając ją ciągiem "0.0." (na wypadek gdyby autor programu zdecydował się kiedyś wydać wersję o miło brzmiącym numerze 1.0). Zatem, jeśli datą wydania danej wersji programu było 19 grudnia 1998 r., to powinieneś oznaczyć jego wersję jako 0.0.19981219.

Niektóre programy nie są jednak w żaden sposób numerowane. W takich przypadkach powinieneś skontaktować się z zewnętrznym opiekunem, aby dowiedzieć się, czy używa on jakiejś innej metody do oznaczania kolejnych poprawek programu.


2.4 Wstępna "debianizacja"

Upewnij się, że jesteś w katalogu ze źródłami programu i wydaj następujące polecenie:

       dh_make -e twój.adres@opiekuna.pl -f ../gentoo-0.9.12.tar.gz

Oczywiście musisz zastąpić ciąg "twój.adres@opiekuna.pl" adresem Twojej skrzynki pocztowej, gdyż zostanie on wpisany do pliku ze zmianami (changelog) i innych plików, oraz zastąpić nazwę pliku nazwą Twojego archiwum źródłowego. Więcej szczegółów znajdziesz na stronie podręcznika dh_make(1).

Trzeba też wprowadzić kilka dodatkowych informacji. Zostaniesz poproszony o podanie typu pakietu, który tworzysz. Gentoo to pojedynczy pakiet binarny - tworzy on tylko plik binarny, a zatem jeden plik .deb. W takim wypadku zaznaczamy pierwszą opcję za pomocą klawisza `s'. Następnie sprawdzamy informacje na ekranie i, jeśli wszystko się zgadza, potwierdzamy je naciskając <enter>.

Po wykonaniu dh_make jest tworzona kopia autorskiego archiwum jako gentoo_0.9.12.orig.tar.gz, w katalogu nadrzędnym, w celu dostosowania, jako niedebianowego pakietu pakietu źródłowego, do diff.gz. Nazwa tego pliku ma 2 zasadnicze właściwości:

Powtórzmy: ponieważ jesteś jeszcze nowym opiekunem, odradzamy Ci tworzenie skomplikowanych pakietów, takich jak:

Prosimy zauważyć, że powinno się uruchomić program dh_make tylko jeden raz, gdyż nie zachowa się on poprawnie, gdy uruchomisz go ponownie w tym samym już "zdebianizowanym" katalogu. Oznacza to również, że będziesz musiał użyć innej metody, aby wprowadzić w przyszłości nową poprawkę lub nową wersję pakietu. Więcej informacji na ten temat znajdziesz dalej w rozdziale Aktualizacja pakietu, Część 9.


[ powrót ] [ Spis treści ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ A ] [ dalej ]


Podręcznik dla nowych opiekunów pakietów Debiana

wersja oryginału: 1.2.11, 12-01-2007, wersja tłumaczenia: 1.2.5, 27-09-2007

Josip Rodin joy-mg@debian.org
polskie tłumaczenie: Paweł Tęcza ptecza@debianusers.pl
korekta tłumaczenia: Marcin Owsiany porridge@debian.org
wznowienie tłumaczenia: Wojciech Zaręba wojtekz@comp.waw.pl