Ambalare cu Debhelper
Important cerinţe: Cerințele din secțiunea numită "Ambalare de la zero" plus debhelper și dh-make Ca ambalator, rareori veți crea pachete de la zero, așa cum am făcut în secțiunea anterioară. După cum vă puteți imagina, multe dintre sarcinile și informațiile din norme fișierul, de exemplu, sunt comune pachetelor. Pentru a face ambalajul mai ușor și mai eficient, puteți utiliza debhelper pentru a ajuta la aceste sarcini. Debhelper este un set de scripturi Perl (prefixate cu dh_) care automatizează procesul de construire a pachetelor. Cu aceste scripturi, construirea unui pachet Debian devine destul de simplă. În acest exemplu, vom construi din nou pachetul GNU Hello, dar de această dată vom compara activitatea noastră cu Ubuntu salut-debhelper pachet. Din nou, creați un director unde veți lucra: Apoi, obțineți pachetul sursă Ubuntu: Ca și în exemplul precedent, primul lucru pe care trebuie să-l facem este să despachetați arhiva originală (în amonte). În loc să copiați tarballul din amonte hello_2.1.1.orig.tar.gz așa cum am făcut în exemplul anterior, vom lăsa dh_make faceți munca pentru noi. Singurul lucru pe care trebuie să-l faceți este să redenumiți folderul sursă, astfel încât acesta să fie în formă de
Pentru a crea debianizarea inițială a sursei pe care o vom folosi dh_make. dh_make vă va pune apoi o serie de întrebări: Prudență Numai alerga dh_make -e o singura data. Dacă o rulați din nou după ce o faceți pentru prima dată, nu va funcționa corect. Dacă doriți să o modificați sau ați făcut o greșeală, eliminați directorul sursă și dezactivați din nou tarballul din amonte. Apoi puteți migra în directorul sursă și încercați din nou. Alergare dh_make -e are două lucruri: Salut programul nu este foarte complicat și, după cum am văzut în secțiunea numită "Ambalare de la zero", ambalarea nu necesită mult mai mult decât fișierele de bază. Prin urmare, să eliminăm .ex fișiere: Pentru Salut, de asemenea, nu veți * Licență * Ubuntu Ghid de ambalare Index nevoie README.Debian (Fișier README pentru probleme specifice Debian, nu README al programului) dirs (folosit de dh_installdirs pentru a crea directoarele necesare); Documente (folosit de dh_installdocs pentru a instala documentația de program), sau info (folosit de dh_installinfo pentru a instala fișierul info) în fișierul debian director. Pentru mai multe informații despre aceste fișiere, consultați secțiunea numită "fișiere exemplu dh_make". În acest moment ar trebui să aveți doar changelog, compat, Control, drepturi de autor, și norme fișiere în debian director. Din secțiunea numită "Ambalare de la zero", singurul fișier care este nou este compat, care este un fișier care conține debhelper versiune (în acest caz 4) care este utilizată. Va trebui să ajustați changelogușor în acest caz pentru a reflecta faptul că acest pachet este numit salut-debhelper mai degrabă decât doar Salut: Prin utilizarea debhelper, singurele lucruri pe care trebuie să le schimbăm Control sunt numele (înlocuind Salut pentru salut-debhelper) și adăugarea debhelper (> = 4.0.0) la Build-Dependență câmp pentru pachetul sursă. Pachetul Ubuntu pentru salut-debhelper se pare ca: Putem copia drepturi de autor și fișierul postinst și prerm script-uri de la Ubuntu salut-debhelper deoarece nu s-au schimbat de la secțiunea numită "Ambalare de la zero". De asemenea, vom copia norme astfel încât să putem inspecta acest lucru. Ultimul fișier la care trebuie să ne uităm este norme, în cazul în care puterea de debhelper scripturile pot fi văzute. debhelper versiune a norme este oarecum mai mică (54 de linii, spre deosebire de 72 de linii în versiunea din secțiunea numită "reguli"). debhelper versiunea arata ca: touch build binar-indep: install # Nu există fișiere independente de arhitectură care să fie încărcate # generate de acest pachet. Dacă ar exista, ar fi fost făcute aici. binar-binar: instalare dh_testdir -a dh_testroot -a dh_installdocs -a NEWS dh_installchangelogs -a ChangeLog dh_strip -a dh_compress -a dh_fixperms -a dh_installdeb -a dh_shlibdeps -a dh_gencontrol -a dh_md5sums -a dh_builddeb -a binar: binar-indep binar- arc .FONY: binar-binar binar-indep curat checkroot Observați că sarcini precum testarea dacă sunteți în directorul corect (dh_testdir), asigurându-vă că construiți pachetul cu privilegii root (dh_testroot), instalarea documentației (dh_installdocs și dh_installchangelogs), și de curățare după construirea (dh_clean) sunt gestionate automat. Multe pachete mult mai complicate decât Salut avea norme fișiere nu mai mare, deoarece debhelper scripturile se ocupă de majoritatea sarcinilor. Pentru o listă completă de debhelper scripturi, vă rugăm să consultați secțiunea numită "Listă de debhelper script-uri ", care sunt, de asemenea, bine documentate în cadrul lor om pagini. Este un exercițiu util pentru a citi pagina man (sunt bine scrise și nu lungi) pentru fiecare script de ajutor folosit în cele de mai sus norme fişier.