Rêberdana Packaging Ubuntu

Dokumentasyonê

Packaging with Debhelper


[Giring]

Pêdivîbûn: Pêdiviyên ji beşa "Packaging From Scratch" re bi pevçûn û dh-make

Wek pakêtek, hûn kêm caran pakêtên ku ji me re di beşa berê de pêk kir. Wek ku hûn difikirin, gelek kar û agahdariyê di pelên qaîdeyan de , wekî nimûne, pakêtan in. Ji bo ku pakkirina pakanîna hêsantir û hêsan e, hûn dikarin ji bo karûbarên van karanîna alîkariyê dahilber bikar bînin. Debhelper pergala Perl veşartî ye (pêşniyazek dh_ ) ku pêvajoya bazara pakistana otomatîk dike. Bi van pirtûkan, avakirina pakanîna Debian de pir hêsan e.

Di vê nimûneyê de, em ê dîsa pakêtê GNU Hello çêbikin, lê caro em ê karê me karûbarên me bi hevpeymana Ubuntu hello-debhelper . Hingê dîsa, pirtûkxaneyê biaxivin ku hûn ê kar bikin

mkdir ~ / hello-debhelper cd ~ / hello-debhelper wget http://ftp.gnu.org/gnu/hello/hello-2.1.1.tar.gz mkdir ubuntu cd ubuntu

Piştre, pakêtê çavkaniya Ubuntu bibînin:

apt-get source hello-debhelper cd

Wekî mînakek mînak, yekem tiştek ku em hewce ne hewce ye ku tarîba sereke (upstream).

tar -xzvf hello-2.1.1.tar.gz

Di şûna kopêkirina tariyê ya hilberê hello_2.1.1.orig.tar.gz wekî ku em di mînakek berê de didin, em ê ji bo me karê xwe dh_make bikin. Tenê tiştê ku hûn dixwazin ku peldanka çavkaniyê binivîsin, da ku ew di forma - de ye ku pakagenameame kêm e. Di vê rewşê de, bi tenê bêbawerî tarball bi awayekî navekî veşartî navê navnîşana navîn ve hilberandin, em dikarin di nav vê yekê de bigirin:

cd hello-2.1.1

Ji bo ku afirandina "debianization" ya çavkaniyê ava bike, em ê dh_make bikar bînin .

dh_make -e your.maintainer@address -f ../hello-2.1.1.tar.gz

Dh_make dê ji we re pirsên pirsan bipirsin:

Tîpa pakêt: yek binary, pir binary, pirtûkxane, modela kernel an cdbs? s / m / l / k / b] s
Navê navîn: Captain Packager Email-Address: packager@coolness.com Dîroka: Thu, 6 Apr 2006 10:07:19 -0700 Navê Peldanka: hello Vebijêrk: 2.1.1 Lîsans piştrast bikin: Enter


[Baldaynî]

Tenê dh_make-ê carek dimeşînin . Ger hûn piştî ku hûn vê yekê bikin, dîsa careke din bike, ew ê baş nake. Heke hûn dixwazin biguhînin an jî çewtiyek çêbikin, rêveberiya çavkaniyê jê bibînin û hilberên nû yên hilbêle ne. Hingê hûn dikarin di navnîşana çavkaniyê de koçber bikin û dîsa hewl bikin.

Dh_make -e du tiştan dike:

Bernameya Bila ne pir zehmet e, û wekî ku em di beşê "Packaging From Scratch" re tê dîtin, dîtiye pelên wê ji pelên bingehîn yên bêtir hewce ne. Ji ber vê yekê, bihêle em pelên xexê jêbirin :

cd debian rm * .ex * .EX

Ji bo hello , hûn ê jî ne

* License

* Indeksa Rêberrêya Packaging Packaging Ubuntu

Pêdivî ye README.Debian ( Daxuyaniya pelê ya ji bo pirsgirêkên Debian yên taybet, ne bernameya README), dirs (ji hêla derhênerînan hewce ye ku dokumentên hewceyî çêbikin), dokument (ji hêla dh_installdocs ve tê bikaranîn belge belge program), an jî agahdarî (ji hêla dh_installinfo ve tê sazkirin agahdar bikin) pelê) pelan di nav debian de directory. Ji bo agahdariyên van pelan ji bo beşa "dh_make mînak pelan" tê binivîse.

Di vê yekê de, divê hûn tenê pergalog , compat , kontrol , kopî û rêzikên pelan di nav debian de pêdivî ye. Ji beşa "Calling From Scratch" re, navê nû ya nû ya nû ye, lêgerîn e ku pelê ku di çarçoveya debhelper (di vê rewşê 4) de tê bikaranîn e.

Hûn hewce ne ku ji bo vê rewşê piçûk guhertinên hûrgelê biguherînin ku ev pakêtê bi navê hello-debhelper bi tenê hello ne .

hello-debhelper (2.1.1-1) dapper; urgency = low * Released Initial - Captain Packager Thu, 6 Apr 2006 10:07:19 -0700

Bi karanîna fikirîn , tenê tiştên ku em hewce ne ku di bin kontrola guherînê de navê wan (ne ji bo hello-debhelper hello ) alternatîf e û ji bo debilperper (> = 4.0.0) ji bo avakirina pakêtê çavkaniya zeviyê ava bikin. Pakêtê Ubuntu ji bo hello-debhelper looks like:

Em dikarin pelên kopî yên kopî û şîfreyên postst û prerm ji pakistana hello-debhelper , ji ber ku ew ji ber ku beşa "Pargîdanî ji Scratch" tê guhertin nehatiye guhertin. Em ê pelê pelên kopî kopî bikin, da ku em dikarin kontrol bikin.

cp ../../ubuntu/hello-debhelper-2.1.1/debian/copyright. cp ../../ubuntu/hello-debhelper-2.1.1/debian/postinst. cp ../../ubuntu/hello-debhelper-2.1.1/debian/prerm. cp ../../ubuntu/hello-debhelper-2.1.1/debian/rules.

Peliya dawî ya ku em pêdivî ye ku li ser çavkaniyan binêrin, ku derê hêza debhelper dikarin bêne dîtin. Vebijêrk pirtûka hiqûqê hindiktir e (54 lênêrîn wekî 72 pevçûnan di vîdyoyê de ji beşa "qanûn" tê gotin).

Vebijêrk pirtirkêmtir eşkere ye:

#! / usr / bin / make-f package = hello-debhelper CC = gcc CFLAGS = -g -Wall ifeq (, $ (noopt peyda, $ (DEB_BUILD_OPTIONS))) CFLAGS + = -O2 endif #export DH_VERBOSE = 1 pak : dh_testdir dh_clean rm -f build - $ (MAKE) sazkirinê: dh_clean dh_clean $ (MAKE) prefix = $ (CURDIR) / debian / $ (pakistan) / usr \ mandir = $ (CURDIR) / debian / $ (pakistan) / avakirina / mirov \ infodir = $ (CURDIR) / debian / $ (pakistan) / wezaret / agah / sazkirinê \ sazkirina sazkirinê: ./configure -prefix = / usr $ (MAKE) CC = "$ (CC) "CFLAGS =" $ (CFLAGS) "

binivîsin binary-indep: saz bikin # Doseyên architecture-independent no-not-be-be-uploaded-by-packed-by-this-packed-uploaded-up. Heke hebû ew ê li vir hatine çêkirin. binary-arch: sazkirina dh_testdir -a dh_testroot -a dh_installdocs -a Nûçe 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- pirtirkêmtir .HONY: binary binary-ark binary-bin kontrola kontrolê

Hişyar bikin ku karên wek ceribandinên ku hûn di pirtûkxaneya rastîn de ( dh_testdir ), biqewiminin ku hûn pargîdaniyên bi rexşeyên root root ( dh_testroot ) ava dikin, sazkirina belgeyên ( dh_installdocs û dh_installchangelogs ), û piştî çêkirina avakirina dh_clean . Gelek pakêtan ji hêla hêsantir tevlîhev e ku ji hêla pelên pelan ve ne hene hene, ji ber ku pirtûkên debîlperwer pir pir karan dikin. Ji bo lîsteya yekem a scriptsên debichper , ji kerema xwe beşa beşa "Lîsteya debihperê " binivîse. Ew di nav rûpelên merivên wan de belgeyên din jî belgekirin. Vebijêrkek erzantir e ku pela pirtûka xwendinê (ew bi nivîskî vegotin û pir dirêj ne) ji bo her şêweya nivîskarê di pelên jorîn jorîn bikar anîn.