Wstęp

Wstęp

To ostatnia odsłona naszej serii C Development i prawdopodobnie najbardziej nietechniczna. Jeśli podążałeś za nami od samego początku i ćwiczyłeś jak najwięcej, masz teraz podstawową wiedzę na temat rozwoju C i sposobu pakowania (ulubionej) aplikacji dla dwóch najczęściej używanych rodzin dystrybucji Linuksa, Debiana i Redhat. Ten artykuł dotyczy społeczności, jak wnieść wkład, jak współpracować, a na koniec, jak zdobyć pakiet w oficjalnych archiwach Debian. Jeśli przeczytasz poprzednie artykuły z serii, nie będziesz potrzebować żadnej innej wiedzy technicznej; Wszystko, czego potrzebujesz, to wola, aby zapewnić swoją wiedzę na rzecz korzyści społeczności.

Rozpoczęcie pracy

Masz aplikację, pakowałeś ją, a teraz chcesz przesłać ją do archiwów Debian (przy okazji, wiele przedstawionych tutaj pomysłów dotyczy wielu projektów open source: to, co zwykle różni się, jest sposobem robienia rzeczy). Powiedzielibyśmy nie tak szybko. Poświęć chwilę, aby oddychać i znaleźć sposoby na przekazanie społeczności. Poświęć trochę czasu na przeczytanie przewodnika Debiana nowego opiekuna, jeśli jeszcze tego nie zrobiłeś, i pamiętaj o kluczowym słowie tutaj: społeczność. Wszyscy są wolontariuszem i wybraliśmy Debiana, zwłaszcza ze względu na jego demokratyczne poglądy i nikt nie jest w żaden sposób zapłacony ani zmuszony do wykonania licytacji. W każdym razie, ponieważ wiemy, jak bardzo lubisz czytać przewodniki i instrukcje, część tego artykułu będzie polegała na rozsądnych porad dotyczących współpracy. Najpierw przyzwyczaj się do samodzielnego radzenia sobie. Nikt nie lubi osoby, która, kiedy uderzy w pierwszy znak problemów, zamiast iść do najlepszego przyjaciela internetowego, $ Search_Engine, zacznij zanieczyszczać fora, listy mailowe i kanały IRC z pytaniami, takie jak „jakie flagi GCC potrzebuję Aby skompilować mój kod dla i686?". Jedyne, co zyskasz, to mniej niż przyjazny RTFM i wiele brakujących punktów maniakowych. Tak, wiemy, że instrukcja GCC jest duża i pewna strzała na bóle głowy, ale czytanie instrukcji, a następnie wyszukiwanie sieci jest właściwą drogą (TM). Bez wyjątków. Zrobisz pierwsze dobre wrażenie, gdy pokażesz innym programistom, że odrobiłeś pracę domową. Z drugiej strony, dając początkującym trudne czas, zwłaszcza gdy takie zachowanie nie jest wymagane, nie przyniesie ci żadnej popularności. Pamiętaj, że kiedyś byliście podobni, pamiętaj, że ty, jak wszyscy, nadal masz wiele do nauczenia się i być może skieruj osobę w kierunku zasobu, które Twoim zdaniem jest pomocne. W tym kontekście pamiętaj ponownie to słowo: społeczność. Twoja praca niewiele znaczy, pomimo tego, że oznacza dla ciebie świat, chyba że społeczność uzna ją za przydatną. Współpracuj z nimi i bądź gotowy zaakceptować opinie i bądź za to wdzięczny, nawet jeśli nie lubisz tego, co słyszysz. Zostaw swoją dumę do drzwi i pamiętaj, że najlepszym i być może jedynym sposobem na ulepszenie oprogramowania jest opinie społeczności. Ale nie wpadaj w skrajności i staraj się być bezstronny. Być może niektórzy ludzie spróbują cię odłożyć tylko dla zabawy: zignoruj ​​je i skoncentruj się na konstruktywnej krytyce.

Narzędzia handlu

Pierwszym narzędziem, którego będziesz potrzebować jako dewelopera Debiana lub dowolnego innego dystrybucji/projektu, jest cierpliwość. Nie ma znaczenia, czy to twoje własne oprogramowanie, które pakujesz, czy kogoś innego, tak jak to zrobiliśmy. Nie staje się deweloperem w nocy, szczególnie w projekcie zorientowanym na jakość jako Debian. Teraz, aby dostać się w praktyczną stronę rzeczy, pierwszym i najbardziej oczywistym narzędziem, którego potrzebujesz, jest kompilator języka. Lub, jeśli program jest napisany w jakimś interpretowanym języku, upewnij się, że tłumacz (Perl, Python, Ruby…) jest tam jako zależność. Będziemy jednak skoncentrować się na stronie C, ponieważ jest to w końcu seria artykułów programistycznych C i zapewni ci niehazaną listę narzędzi, które lepiej zainstalowałeś na Twoim komputerze programistów:

Auto* Tools (Autoconf, Automake,…) Debhelper i DH-Make-Devscripts specyficzne dla Debiana, Fakeroot-To samo, zobacz przewodnik, aby uzyskać szczegółowe informacje na temat wybranego przez ciebie VC, w zależności od sytuacji-wolimy przyjmować Brak stron gnupg - dla cyfrowo Podpisanie Twoje pakiety, obowiązkowe w Debian Lintian - nazwa jest kombinacją Lint i Debian, więc jest to samozadowolenia łatka - powinieneś wiedzieć, dlaczego potrzebujesz tego PBuilder - do stworzenia chroot 

Gdybyś był ostrożny, zauważyłbyś, że pominęliśmy ważną narzędzie na tej liście. Czy możesz to zauważyć?

Dokumentacja

Debian zaleca dwa dokumenty. W rzeczywistości nie. Debian poleca dwa dokumenty, ale mówimy, że to konieczne jest przeczytanie ich więcej niż raz i utrzymywanie ich przez cały czas. Są to zasady debiana i referencje programiści, zarówno dostępne za pośrednictwem Web i As Pakiety. Również standardy kodowania GNU powinny być pod ręką, gdy ich potrzebujesz, szczególnie kiedy/jeśli sam piszesz aplikację.

Pod prąd

Ponieważ koncentrujemy się na wcześniejszym przykładach tej serii, łatwo jest dowiedzieć się, że jesteśmy tylko pakowaniami, a nie głównymi programistami, więc musimy utrzymać kontakt z Upstream. Obowiązują oczywiście zasady komunikacji przedstawione powyżej, a ścisła współpraca z Upstream stanowi zdrowy pakiet, który jest niezwłocznie aktualizowany, gdy tylko autor przesłę nową wersję. Chociaż wspomniany autor prawdopodobnie przetestował oprogramowanie przed wydaniem go na wolność, jeśli wykonasz testy jednostkowe dla siebie przed przesłaniem paczki, jeszcze lepiej. Spójrz na narzędzia takie jak DeJagnu w tym celu i zgłoś wszelkie problemy, które stwierdzono na górze. Mówiąc o raportach, musisz zrozumieć odpowiedzialność, którą bierzesz na siebie, gdy zostajesz opiekunem. Wszystkie raporty o błędach od użytkowników Debiana przyjdą do Ciebie, a Twoim obowiązkiem jest działanie jako katalizator między użytkownikami a Upstream, aby rozwiązać wszystkie problemy.

Mentor

Wielu z was, zwłaszcza starszych, takich jak ja, widziało serię Karate Kid. Jeśli cokolwiek, ten film pokazuje związek między mistrzem a uczniem (ok, możesz również użyć Star Wars jako przykładu…). Jeśli uważasz, że poprosisz o zostanie deweloperem, a twoje życzenie jest spełnione w ciągu kilku minut, zapomniałeś o cierpliwości. Nie, musisz najpierw poprosić o mentoring, pokazując swoje osiągnięcia, motywacje i tak dalej. Po pewnym czasie, po tym, jak udowodnisz, złożycie wniosek, aby zostać opiekunem, a mentor poręczy za Ciebie.

Przesyłanie

Jesteś prawie tam, wszystko, co musisz zrobić, to wykonać właściwe przesyłanie. Jeśli zaszedłeś tak daleko, możesz już poklepać się po plecach. Teraz potrzebna aplikacja nazywa się dupload (1) i powinieneś utworzyć plik o nazwie dupload.Conf (5) w katalogu domowym i zacznij modyfikować ustawienia. Możesz, jeśli ręczna strona pliku wydaje się przerażająca /etc/dupload.conf jako przykład. Po uratowaniu ~/dupload.conf, Możesz zrobić coś takiego:

 $ dupload wczoraj 2.7.0.5_I386.zmiany 

Teraz jest to ćwiczenie dla czytelnika, aby dowiedzieć się, co jeszcze należy zrobić podczas przesyłania pakietu po raz pierwszy. Również rozdział 9 przewodnika Debiana nowego opiekuna powinien zostać przeczytany i przeczytany ponownie, a potem trochę więcej. O to chodzi!

Wszystkie artykuły z tej serii:

  • I. C Opracowanie w Linux - Wprowadzenie
  • Ii. Porównanie C i innych języków programowania
  • Iii. Typy, operatorzy, zmienne
  • Iv. Kontrola przepływu
  • V. Funkcje
  • Vi. Wskaźniki i tablice
  • VII. Struktury
  • VIII. Podstawowe I/O
  • IX. Styl kodowania i zalecenia
  • X. Budowanie programu
  • Xi. Opakowanie dla Debiana i Fedory
  • XII. Uzyskanie pakietu w oficjalnych repozytoriach Debiana

Powiązane samouczki Linux:

  • Rzeczy do zainstalowania na Ubuntu 20.04
  • Wprowadzenie do automatyzacji, narzędzi i technik Linuksa
  • Rzeczy do zrobienia po zainstalowaniu Ubuntu 20.04 Focal Fossa Linux
  • Mint 20: Lepsze niż Ubuntu i Microsoft Windows?
  • Ubuntu 20.04 Przewodnik
  • Rzeczy do zrobienia po zainstalowaniu Ubuntu 22.04 JAMMY Jellyfish…
  • Pobierz Linux
  • Jak podwójnie rozruch Kali Linux i Windows 10
  • Mastering Bash Script Loops
  • Rzeczy do zainstalowania na Ubuntu 22.04