To tłumaczenie może nie uwzględniać zmian od 2022-05-10 dokonanych w oryginale angielskim.
Możecie podejrzeć zmiany. Aby zapoznać się z informacjami dotyczącymi utrzymywania tłumaczeń tego artykułu, proszę odwiedzić stronę tłumaczeń.
Zasoby GNU dla deweloperów
Ta strona opisuje wiele z usług, które są dostępne dla deweloperów GNU na maszynach Projektu GNU. Aby uzyskać wszystkie informacje na temat przywilejów i odpowiedzialności opiekunów projektów GNU, proszę przeczytać Informacje dla opiekunów projektów GNU, a także zapoznać się ze Standardami Programowania GNU. Warto również zainteresować się radami dla opiekunów GNU oraz opisem tego co jest pakiet GNU.
Dzięki obfitości niedrogich komputerów, na których może działać GNU/Linux, a także szerokiego dostępu do Internetu, wielu wolontariuszy GNU posiada wszystkie narzędzia komputerowe, których potrzebują. Nadal jednak istnieją zalety posiadania centralnego serwera, gdzie mogą oni współpracować bez udostępniania własnych maszyn innym.
Z tego powodu, Fundacja Wolnego Oprogramowania zachęca
aby projekty GNU jako swoją główną bazę wykorzystywały maszyny
gnu.org
. Używanie ich pomaga niebezpośrednio również projektowi
GNU, poprzez zwiększenie publicznej świadomości na temat GNU
i szerzenia idei wspólnej pracy, przynoszącej korzyść wszystkim.
Savannah i kontrola wersji
Jeśli pracujesz nad oficjalnym pakietem GNU, stanowczo zalecamy użycie publicznego repozytorium kodu źródłowego na Savannah, serwerze hostingowym GNU. Aby to zrobić należy najpierw stworzyć konto użytkownika oraz zarejestrować swój pakiet GNU. Następnie przedstawiony zostanie wybór systemu kontroli wersji, stworzenia stron internetowych projektu, zarządzania uprawnieniami dla innych osób wnoszących swój wkład oraz wiele innych funkcji.
Lista mailingowa
W wypadku potrzeby prowadzimy listy mailingowe dla projektów oprogramowania GNU, zarówno zarządzane ręcznie, jak i automatycznie.
Po zarejestrowaniu pakietu GNU na Savannah, interfejs dostępny na stronie pozwala deweloperom na tworzenie i zarządzanie związanymi z ich pakietem listami mailingowymi.
Każdy pakiet GNU powinien mieć przynajmniej listę mailingową, na której
można zgłaszać błędy o nazwie kanonicznej bug-nazwa
pakietu@gnu.org
(z dodatkowymi przydatnymi aliasami,
czyli innymi nazwami kierującymi na ten adres). Używając Savannah
możesz stworzyć listę z taką nazwą dla swojego pakietu. Niektóre
pakiety korzystają wspólnie z bug-gnu-utils@gnu.org, ale obecnie
zalecamy, żeby każdy pakiet miał oddzielną listę.
Pakiety mogą mieć inne listy w różnych celach: ogłoszenia, pytania o pomoc, umieszczania kodu źródłowego, dyskusji użytkowników lub cokolwiek innego co opiekun pakietu uzna za przydatne.
Archiwa automatycznie zarządzanych list dostępne są na lists.gnu.org (archiwa mbox dostępne przez
HTTPS), a także
poprzez menedżera listy. Archiwa ręcznie zarządzanych list zazwyczaj
trzymana są w /com/archive
na serwerach GNU.
Kiedy lista mailingowa stanie się wystarczająco duża, by było to
uzasadnione, możemy stworzyć grupę dyskusyjną gnu.*
połączoną
obustronnym linkiem z listą mailingową.
Strony internetowe
Głównym serwerem GNU jest http://www.gnu.org/. Stanowczo zalecamy,
aby pakiety GNU używały adresu
http://www.gnu.org/software/nazwa pakietu
jako
swojej głównej strony domowej.
Używając Savannah, twórcy oprogramowania mogą tworzyć i zarządzać własnymi stronami pod tym adresem url przez repozytorium CVS (oddzielnym od głównego repozytorium projektu, które może używać dowolny wspierany system kontroli wersji). Więcej informacji o zarządzaniu stronami na serwerach GNU.
FTP
Główny serwer FTP dla oprogramowania GNU znajduje się pod adresem http://ftp.gnu.org/
i posiada kopie na całym
świecie. Stanowczo zalecamy by wszystkie projekty GNU wysyłały tu swoje
wydania (oprócz innych lokalizacji, które uznają za stosowne).
Używamy innego serwera dla wydań testowych, aby ludzie nie instalowali
ich myśląc, że są one ostatecznymi wydaniami programu. Ten serwer to ftp://alpha.gnu.org/
.
Informacja dla opiekunów GNU zawiera wszystkie szczegóły opisujące proces wysyłania danych przez ftp. Są one takie same dla obu serwerów.
Konta shellowe
Udostępniamy też konta shellowe na maszynach GNU ludziom, którzy potrzebują ich do pracy nad oprogramowaniem GNU. Posiadanie konta jest przywilejem, ale też odpowiedzialnością. Powinno być one wykorzystywane tylko do pracy nad GNU. Instrukcje uzyskania konta są opisane oddzielnie.
Na ogólnej maszynie opiekunowie pakietu gsrc utrzymują hierarchię bieżących wersji
pakietów GNU (/gd/gnu/gnusys/live
), skompilowanych
z oryginalnych źródeł. Aby je użyć, wykonajcie „source
/gd/gnu/gnusys/live/setup
”.
Można także używać konta GNU do poczty elektronicznej.
Hydra: Ciągła integracja i testowanie przenośności
Narzędzia do ciągłej integracji pozwalają na wychwytywanie błędów programistycznych krótko po tym jak zostają wprowadzone do projektu, co jest szczególnie przydatne w przypadku współpracy wielu osób.
Hydra jest wolnym narzędziem do ciągłej integracji bazującym na menedżerze pakietów Nix. Administratorzy serwera Hydra na Politechnice w Delft wspaniałomyślnie zgodzili się na udostępnienie zasobów dla Projektu GNU. Projekty na Hydra są ponownie kompilowane przy każdym commit lub zmianie w zależnościach, którekolwiek nastąpi pierwsze (zależności to też środowisko kompilacji, które zawiera wydane wersje GCC, GNU make, itd.)
Obecnie może ona budować programy na GNU/Linux (i686 oraz x86_64),
jak również FreeBSD, Darwin oraz Cygwin, a także budować skrośnie
na GNU/Hurd, GNU/Linux dla innych architektur
oraz MinGW. Dostarcza raporty pokrycia kodu utworzone za pomocą
LCOV. Oprócz archiwów tar oraz paczek Nix, może budować pakiety
deb
oraz RPM
. Pakiety mogą być budowane
w oparciu o najnowszą wersją swoich zależności. Na przykład GnuTLS
jest budowane z użyciem najnowszych wersji GNU libtasn1
oraz GNU libgrypt.
Oprócz interfejsu webowego,
Hydra może wysyłać powiadomienia mailem kiedy zmieni się status kompilacji
projektu (np. z SUCCEEDED
na FAILED
). Gdy pakiet ma status FAILED
, log
i drzewo kompilacji są dostępne z interfejsu sieciowego; to drugie
pozwala na podejrzenie wygenerowanych plików (przykładowo
config.log
lub testsuite.log
)
i uzyskania podpowiedzi przy debugowaniu.
Dowolny pakiet oprogramowania GNU może wnieść prośbę o zasoby na Hydra. Każdy pakiet musi dostarczyć swój własny “przepis budowy” napisany w języku Nix ( wyrażenie Nix, w żargonie Nix). Wyrażenia Nix dla projektów GNU są dostępne poprzez Git. Dla prostych projektów używających standardowych narzędzi GNU takich jak Automake oraz Autoconf, przepis jest całkiem prosty. Dla przykładu, przepis dla GNU Patch. Proszę pytania o porady kierować na listę hydra-users@gnu.org.
Po konsultacji Waszego przepisu budowy, napiszcie na listę hydra-users@gnu.org
z prośbą o włączenie do Hydry [maile proszę wysyłać
w języku angielskim – przyp. tłum.]. Zapiszcie się także
do projektu hydra-recipes
na Savannah. To umożliwi dostosowanie do własnych potrzeb
proces kompilacji Waszego projektu.
Aby uzyskać techniczne informacje na temat Hydra, można skonsultować podręcznik Hydra. Więcej szczegółów znajduje się w podręczniku Nix.
platform-testers: ręczne sprawdzanie przenaszalności
Inna przydatna możliwość sprawdzania przed wydaniem jest lista mailowa platform-testers. Jeśli mają czas, ludzie na tej liście kompilują oprogramowanie na różnych systemach na prośbę. (Dodatkowi wolontariusze do tych kompilacji są mile widziani! Zapiszcie się na listę i zacznijcie uczestniczyć.)
W przeciwieństwie do narzędzia Hydra opisanego wyżej, lista platform-testers działa w zasadzie ręcznie, więc każda z metod ma swoje wady i zalety. Przykładowo, drużyna platform-testers ma dostęp do więcej różnych platform i kompilatorów niż Hydra.
Jeśli macie program przed wydaniem, możecie napisać na tą listę dostarczając (1) adres źródła, (2) planowaną datę wydania i (3) adres, na który mają być wysłane wyniki kompilacji. Kompilacje i ich wyniki są składane ręcznie przez wolontariuszy na liście.