Packaging sa Debhelper
Mahalaga Mga Kinakailangan: Ang mga kinakailangan mula sa seksyon na tinatawag na "Packaging From Scratch" plus debhelper at dh-make Bilang isang packager, bihira kang lumikha ng mga pakete mula sa simula tulad ng ginawa namin sa nakaraang seksyon. Tulad ng maaari mong isipin, marami sa mga gawain at impormasyon sa panuntunan Halimbawa, ang file ay karaniwan sa mga pakete. Upang gawing mas madali at mas mahusay ang pag-packaging, maaari mong gamitin debelper upang makatulong sa mga gawaing ito. Ang Debhelper ay isang set ng mga script ng Perl (prefixed with dh_) na awtomatiko ang proseso ng pakete-gusali. Sa mga script na ito, ang paggawa ng isang pakete ng Debian ay nagiging simple. Sa halimbawang ito, muli naming itatayo ang pakete ng GNU Hello, ngunit sa pagkakataong ito ikukumpara namin ang aming gawain sa Ubuntu hello-debhelper pakete. Muli, lumikha ng direktoryo kung saan ka nagtatrabaho: Pagkatapos, kunin ang pakete ng pinagmulang Ubuntu: Tulad ng nakaraang halimbawa, ang unang bagay na kailangan nating gawin ay i-unpack ang orihinal (upstream) tarball. Sa halip na kopyahin ang upstream na tarball sa hello_2.1.1.orig.tar.gz tulad ng ginawa namin sa nakaraang halimbawa, hahayaan namin dh_make gawin ang gawain para sa amin. Ang tanging bagay na kailangan mong gawin ay palitan ang pangalan ng folder ng pinagmulan upang ito ay nasa anyo ng
Upang lumikha ng unang "debianization" ng pinagmulan na gagamitin namin dh_make. Pagkatapos ay hihilingin sa iyo ng dh_make ang isang serye ng mga tanong: Babala Tumakbo lamang dh_make -e isang beses. Kung patakbuhin mo ulit ito pagkatapos mong gawin ito sa unang pagkakataon, hindi ito gagana ng maayos. Kung nais mong baguhin ito o gumawa ng isang pagkakamali, alisin ang direktoryo ng pinagmulan at untar ang upstream na tarball muli. Pagkatapos ay maaari kang lumipat sa direktoryo ng pinagmulan at subukang muli. Pagpapatakbo dh_make -e ang dalawang bagay: Ang Kamusta ang programa ay hindi masyadong kumplikado, at tulad ng nakita natin sa seksyon na tinatawag na "Packaging From Scratch", ang packaging na ito ay hindi nangangailangan ng higit pa kaysa sa mga pangunahing mga file. Samakatuwid, alisin natin ang .ex mga file: Para sa Kamusta, hindi ka rin * Lisensya * Ubuntu Packaging Guide Index kailangan README.Debian (README file para sa mga partikular na isyu ng Debian, hindi sa README ng programa), dirs (ginamit ni dh_installdirs upang lumikha ng mga kinakailangang direktoryo), docs (ginamit ni dh_installdocs upang i-install ang dokumentasyon ng programa), o impormasyon (ginamit ni dh_installinfo upang mai-install ang file ng impormasyon) mga file sa debian direktoryo. Para sa karagdagang impormasyon sa mga file na ito, tingnan ang seksyong tinatawag na "dh_make example files". Sa puntong ito, dapat mayroon ka lamang changelog, compat, kontrolin, copyright, at panuntunan mga file sa debian direktoryo. Mula sa seksyon na tinatawag na "Packaging From Scratch", ang tanging file na bago ay compat, na isang file na naglalaman ng debelper bersyon (sa kasong ito 4) na ginagamit. Kakailanganin mong ayusin ang changelogbahagyang sa kasong ito upang ipakita na ang paketeng ito ay pinangalanan hello-debhelper sa halip na makatarungan Kamusta: Sa pamamagitan ng paggamit debelper, ang tanging mga bagay na kailangan nating baguhin kontrolin ang pangalan (substituting Kamusta para sa hello-debhelper) at pagdagdag debhelper (> = 4.0.0) sa Gumawa-Depende field para sa source package. Ang pakete ng Ubuntu para sa hello-debhelper mukhang: Maaari naming kopyahin ang copyright file at ang postinst at prerm mga script mula sa Ubuntu hello-debhelper package, dahil hindi nagbago ang mga ito dahil ang seksyon na tinatawag na "Packaging From Scratch". Isusumite din namin ang panuntunan file upang maaari naming siyasatin ito. Ang huling file na kailangan naming tingnan ay panuntunan, kung saan ang kapangyarihan ng debelper maaaring makita ang mga script. Ang debelper bersyon ng panuntunan ay medyo mas maliit (54 linya bilang laban sa 72 mga linya sa bersyon mula sa seksyon na tinatawag na "mga patakaran"). Ang debelper Mukhang bersyon: pindutin ang build binary-indep: i-install # Walang mga arkitekturang independiyenteng mga file na mai-upload # na binuo ng paketeng ito. Kung mayroong anumang magiging # ginawa dito. binary-arch: i-install 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 binary: binary-indep binary- arko .PHONY: binary binary-arch binary-indep clean checkroot Pansinin na ang mga gawain tulad ng pagsubok kung ikaw ay nasa tamang direktoryo (dh_testdir), siguraduhin na iyong binubuo ang pakete na may mga pribilehiyo ng ugat (dh_testroot), pag-install ng dokumentasyon (dh_installdocs at dh_installchangelogs), at paglilinis pagkatapos ng build (dh_clean) ay awtomatikong hawakan. Maraming mga pakete mas kumplikado kaysa sa Kamusta mayroon panuntunan ang mga file ay hindi mas malaki dahil sa debelper pinangangasiwaan ng mga script ang karamihan sa mga gawain. Para sa isang kumpletong listahan ng debelper script, pakitingnan ang seksyon na tinatawag na "Listahan ng debelper script ". Sila rin ay mahusay na dokumentado sa kani-kanilang mga lalaki mga pahina. Ito ay isang kapaki-pakinabang na ehersisyo upang mabasa ang pahina ng tao (mahusay ang mga ito at hindi mahaba) para sa bawat script ng katulong na ginamit sa itaas panuntunan file.