Dokumentazio
Debhelperekin paketatzea
[Garrantzitsua]
Baldintzak: "Ontziak Scratch From" izeneko ataleko eskakizunak plus debhelper eta dh-make
Paketatzaile gisa, oso gutxitan izango dituzu paketeak hutsetik sortu aurreko atalean egin dugun bezala. Irudik dezakezu, arau fitxategiko eginkizun eta informazio asko, adibidez, paketeak izaten dira. Enbalajeak errazago eta eraginkorragoa egiteko, debhelper erabili dezakezu zeregin horiekin laguntzeko. Debhelper Perl scriptak ( dh_ aurrizkia) multzo bat da, paketeen eraikuntza prozesua automatizatzen duena. Gidoi hauei esker, Debian paketea eraiki nahiko erraza da.
Adibide honetan, GNU Kaixo paketea berriro eraikiko dugu, baina oraingo honetan gure lana Ubuntu hello-debhelper paketearekin alderatuz egingo dugu. Berriz ere, lanean ari zaren direktorio bat sortuko duzu:
mkdir ~ / hello-debhelper cd ~ / hello-debhelper wget http://ftp.gnu.org/gnu/hello/hello-2.1.1.tar.gz mkdir ubuntu cd ubuntu
Ondoren, lortu Ubuntu iturburu paketea:
apt-get source hello-debhelper cd ...
Aurreko adibidean bezala, lehenik eta behin egin behar dugu jatorrizko (upstream) tarballa deskonprimitzea.
tar -xzvf hello-2.1.1.tar.gz
Ordezko tarballa hello_2.1.1.orig.tar.gz- era kopiatzerakoan aurreko adibidean egin dugun bezala, dh_make egingo dugu lana. Egin behar duzun bakarra jatorrizko iturburua aldatzea da,
cd hello-2.1.1
Hasierako "debianization" iturburua sortzeko dh_make erabiliko dugu.
dh_make -e your.maintainer@address -f ../hello-2.1.1.tar.gz
dh_make-k galdera batzuk egingo dizkizu:
Pakete mota: bitar bakarreko, binario birtual, liburutegi, kernel modulu edo cdbs? [s / m / l / k / b] s
Mantentzaile izena: Captain Packager Helbide elektronikoa: packager@coolness.com Data: Thu, 2006 ots. 6 10:07:19 -0700 Pakete izena: hello Bertsioa: 2.1.1 Lizentzia: hutsik Pakete mota: bakar Hitberretsi: Sartu
[Kontuz]
Dh_make -e behin bakarrik exekutatu. Berriro exekutatzen baduzu lehenengo aldiz egin ondoren, ez da behar bezala funtzionatuko. Aldatu nahi baduzu edo akats bat egin baduzu, iturri direktorioa kendu eta upstream tarball berriro ireki. Ondoren iturburu direktorioan sartu ahal izango duzu eta saiatu berriro.
Dh_make-e exekuzioa bi gauza egiten ditu:
- Hello_2.1.1.orig.tar.gz fitxategia sortzen du gurasoen direktorioan,
- Debian / eta beharrezko txantiloien fitxategiak (.ex) beharrezko oinarrizko fitxategiak sortzen dira.
Kaixo programa ez da oso konplikatua, eta ikusi dugunez, "Packaging from Scratch" izeneko atalean, paketatzeak ez ditu oinarrizko fitxategiak baino askoz ere gehiago behar. Hori dela eta, ezabatu .ex fitxategiak:
cd debian rm * .ex * .EX
Kaixo , ez duzu ere
* Ubuntu Packaging Guide Index
Behar README.Debian (README fitxategia Debian-eko gai zehatzetarako, ez programa README), dirs ( dh_installdirs- ek erabilitako beharrezko direktorioak), docs ( dh_installdocs- ek erabilitako programa dokumentazioa instalatzeko), edo info ( dh_installinfo- k daturik instalatzeko fitxategi) fitxategiak debian direktorioan sartu. Fitxategiei buruzko informazio gehiago lortzeko, ikusi "dh_make adibide fitxategiak" izeneko atala.
Une honetan, changelog , compat , kontrol , copyright eta arau fitxategi bakarra izan beharko zenuke debian direktorioan. "Packaging from scratch" izeneko ataletik, berriaren fitxategi bakarra compat , hau da, debhelper bertsioa (kasu honetan 4) erabiltzen duen fitxategi bat da.
Aldaketa erregistroa pixka bat egokitu behar duzu kasu honetan pakete hau hello-debhelper izenarekin ordezka daitekeela adierazteko :
hello-debhelper (2.1.1-1) dapper; larrialdi = baxua * Hasierako oharra - Captain PackagerThu, 6 Apr 2006 10:07:19 -0700
Debhelper erabiliz, kontrola aldatzeko behar ditugun gauza bakarra izena da ( kaixo hello-debhelperra ordezkatuz ) eta debhelper (> = 4.0.0) gehitzen dio Iturburuko paketearen eraikitzeko mendeko eremura. Ublo-debhelper-en Ubuntu paketea itxura du:
Ubuntu hello-debhelper paketearen copyright fitxategia eta postinst eta prerm gidoiak kopiatu ditzakegu , "Ontziak Scratch-etik" izeneko ataletik aldatu ez direnez. Arau- fitxategia ere kopiatu egingo dugu, ikuskatu ahal izateko.
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.
Beharrezkoa den azken fitxategia arauak da , non debhelper gidoiak ikus daitezkeen. Arauen debhelper bertsioa zertxobait txikiagoa da (54 lerro ezberdinen aurrean, "arauak" izeneko atalean).
Debhelper bertsioa itxura du:
#! / usr / bin / make -f package = hello-debhelper CC = gcc CFLAGS = -g -We ifeq (, $ (findstring noopt, $ (DEB_BUILD_OPTIONS))) CFLAGS + = -O2 endif #export DH_VERBOSE = 1 garbitu : dh_testdir dh_clean rm -f build - $ (MAKE) -i instalazio distclean: build dh_clean dh_installdirs $ (MAKE) prefix = $ (CURDIR) / debian / $ (pakete) / usr \ mandir = $ (CURDIR) / debian / $ (paketea) / usr / share / man \ infodir = $ (CURDIR) / debian / $ (paketea) / usr / share / info \ install build: ./configure --prefix = / usr $ (MAKE) CC = "$ (CC) "CFLAGS =" $ (CFLAGS) "
ukitu eraiki binary-indep: install # Ez dago paketearen bidez sortutako # arkitektura-independente fitxategirik. Edozein izan badira # egin beharko lukete hemen. binary-arch: instalatu 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 bitar: binary-indep binary- arch .PHONY: binario binario-arch binario-indep net checkroot
Kontuan izan portaera zuzena ( dh_testdir ) probatzen ari zarela, paketea root-en pribilegioekin ( dh_testroot ) instalatuz, dokumentazioa instalatuz ( dh_installdocs eta dh_installchangelogs ) eta garbiketa ondoren garbitu ( dh_clean ) automatikoki maneiatzen dira . Pakete asko askoz ere konplexuagoak direnez, arau fitxategiak ez dira handiagoak, debhelper gidoiak zeregin gehienak kudeatzen baititu . Debhelper script-en zerrenda osoa lortzeko, ikus " debhelper scripten zerrenda" atala. Dira, halaber, ondo dokumentatuta dago bere man orriak. Ariketa erabilgarria da gizon orriaren (ondo idatzitakoa eta ez luzea) irakurtzeko, goiko arau fitxategietan erabiltzen den helper script bakoitzerako.