Bin�ris Debian csomag k�sz�t�se HOGYANChr. Clemens Lee clemens@kclee.com 2002.11.30, $Date: 2003/12/19 20:07:14 $ Verzi�t�rt�net Verzi�: 3.0 2003.12.19 �tdolgozta: ccl K�t el�r�s jav�t�sa Claudio Cattazzo jelz�se alapj�n. Verzi�: 2.0 2003.12.13 �tdolgozta: ccl Frank Lichtenheld visszajelz�s�nek figyelembe v�tele. Verzi�: 1.0 2003.11.08 �tdolgozta: ccl Els� kiad�s. Ez a mini-HOGYAN bemutatja, hogyan kell elk�sz�teni egy egyszer� Debian .deb csomagot. _________________________________________________________________ Tartalomjegyz�k 1. [1]Bevezet�s 1.1. [2]Tov�bbi anyagok a Weben 1.2. [3]Magyar ford�t�s 2. [4]Kezdj�nk hozz� 3. [5]Csomagszerkezet 3.1. [6]debian-binary 3.2. [7]data.tar.gz 3.3. [8]control.tar.gz 4. [9]Gyakorlat 4.1. [10]control 4.2. [11]dpkg-deb 5. [12]Alapos ellen�rz�s 5.1. [13]lintian 5.2. [14]Minim�lis dokument�ci� 5.3. [15]fakeroot 5.4. [16]Tov�bbi dokument�ci� 6. [17]�sszegz�s 7. [18]Egy�b 8. [19]K�sz�netnyilv�n�t�s 9. [20]Hivatkoz�sok 1. Bevezet�s Egy teljesen �jonnan elk�sz�tett arch�vumot (f�jl, program, szkript, csomag stb. - a ford.) el�sz�r mindig a saj�t rendszeredre telep�tsd, ne tedd bele r�gt�n a hivatalos Debian disztrib�ci�ba. Tanulm�nyozd a "hivatalos" [21]Debian New Maintainers' Guide (�j Debian karbantart�k k�zik�nyve) le�r�st. A szab�lyos Debian csomagok egy komplett forr�s-csomagot tartalmaznak, az ebben l�v� debian/rules f�jl automatikusan v�grehajtja a megfelel� l�p�seket, bele�rtve a bin�ris elk�sz�t�s�t is. Itt mi most csak azt mutatjuk be, hogyan tegy�nk bele egy kis bin�ris csomagba egy egyszer� shell szkriptet, vagy egy futtathat� bin�rist. Felt�telezem, hogy tudod haszn�lni a "tar �s "man" parancsokat, valamint tudod mi a ".tar.gz" f�jl �s a [22]Debian (illetve egy szerkeszt� haszn�lat�t ;-), de azt is felt�telezem, hogy m�g soha nem foglalkozt�l az olyan programokkal, mint az "ar", vagy a "dpkg". _________________________________________________________________ 1.1. Tov�bbi anyagok a Weben A [23]Debian Reference (Debian referencia) egy kit�n� �ttekint�st, valamint r�szletes inform�ci�t ny�jt a Debian minden saj�toss�g�r�l. A Debian csomagk�sz�t�s hivatalos dokument�ci�ja a [24]Debian New Maintainers' Guide (�j Debian karbantart�k k�zik�nyve). _________________________________________________________________ 1.2. Magyar ford�t�s A magyar ford�t�st [25]Z�honyi Lor�nd Istv�n k�sz�tette (2004.06.01). A lektor�l�st [26]Daczi L�szl� v�gezte el (2004.06.02). A dokumentum legfrissebb v�ltozata megtal�lhat� a [27]Magyar Linux Dokument�ci�s Projekt honlapj�n. _________________________________________________________________ 2. Kezdj�nk hozz� Id�zet a 2.2.2-es Debian Reference (Debian referencia) le�r�sb�l, 2002.11.30: "A Debian csomag bels� form�ja a deb(5) k�zik�nyv oldalban van le�rva. Mivel a bels� forma �lland�an v�ltozik (a f� Debian kiad�sok k�z�tt), mindig a dpkg-deb programot haszn�ld a .deb f�jlok kezel�s�hez." A dpkg-deb k�zik�nyv oldal�b�l: "dpkg-deb �sszecsomagol, kicsomagol, �s inform�ci�kat ad a Debian arch�vumokr�l. A .deb f�jlokat az ar �s tar programokkal is kezelheted, ha sz�ks�ges. Haszn�ld a dpkg-t a rendszereden l�v� csomagok telep�t�s�hez �s t�rl�s�hez." Egy csom� p�ldak�nt haszn�lhat� .deb f�jlt tal�lsz a "/var/cache/apt/archives/" k�nyvt�rban. A "dpkg-deb -I valamilyen_csomag.deb" paranccsal megkapod a csomag �ltal k�n�lt k�l�nlegess�geket. A "dpkg-deb -c valamilyen_csomag.deb" list�zza, hogy a csomagban l�v� f�jlok hova ker�ltek a telep�t�s ut�n. List�zd ki a .deb f�jl tartalm�t az "ar tv valamilyen_csomag.deb" paranccsal. Haszn�ld az "x" kapcsol�t a f�jl kicsomagol�s�hoz. _________________________________________________________________ 3. Csomagszerkezet Vizsg�ljunk meg egy p�ldacsomagot egy kicsit k�zelebbr�l. P�ld�ul a "parted_1.4.24-4_i386.deb" f�jl ezt a h�rom f�jlt tartalmazza: $ ar tv parted_1.4.24-4_i386.deb rw-r--r-- 0/0 4 Mar 28 13:46 2002 debian-binary rw-r--r-- 0/0 1386 Mar 28 13:46 2002 control.tar.gz rw-r--r-- 0/0 39772 Mar 28 13:46 2002 data.tar.gz Most csomagoljuk ki az �sszeset, bele�rtve a tar f�jlokat is. (ar xv parted_1.4.24-4_i386.deb - a ford.) _________________________________________________________________ 3.1. debian-binary Ennek a f�jlnak "2.0\n" a tartalma. Ez a .deb form�tum verzi�sz�ma. 2.0 verzi�n�l az �sszes t�bbi sort figyelmen k�v�l hagyja a rendszer. _________________________________________________________________ 3.2. data.tar.gz A "data.tar.gz" tartalmazza az �sszes telep�tend� f�jl list�j�t, a telep�t�s ut�ni el�r�si �tvonalukkal egy�tt: drwxr-xr-x root/root 0 2002-03-28 13:44:57 ./ drwxr-xr-x root/root 0 2002-03-28 13:44:49 ./sbin/ -rwxr-xr-x root/root 31656 2002-03-28 13:44:49 ./sbin/parted drwxr-xr-x root/root 0 2002-03-28 13:44:38 ./usr/ drwxr-xr-x root/root 0 2002-03-28 13:44:41 ./usr/share/ drwxr-xr-x root/root 0 2002-03-28 13:44:38 ./usr/share/man/ drwxr-xr-x root/root 0 2002-03-28 13:44:52 ./usr/share/man/man8/ -rw-r--r-- root/root 1608 2002-03-28 13:44:37 ./usr/share/man/man8/parted. 8.gz drwxr-xr-x root/root 0 2002-03-28 13:44:41 ./usr/share/doc/ drwxr-xr-x root/root 0 2002-03-28 13:44:52 ./usr/share/doc/parted/ -rw-r--r-- root/root 1880 2002-03-07 14:20:08 ./usr/share/doc/parted/READM E.Debian -rw-r--r-- root/root 1347 2002-02-27 01:40:50 ./usr/share/doc/parted/copyr ight -rw-r--r-- root/root 6444 2002-03-28 13:37:33 ./usr/share/doc/parted/chang elog.Debian.gz -rw-r--r-- root/root 15523 2002-03-28 02:36:43 ./usr/share/doc/parted/chang elog.gz Ennek kell lennie az utols� f�jlnak a .deb arch�vumban. _________________________________________________________________ 3.3. control.tar.gz A mi p�ld�nkban ez a f�jl a k�vetkez�ket tartalmazza: -rw-r--r-- 1 root root 1336 Mar 28 2002 control -rw-r--r-- 1 root root 388 Mar 28 2002 md5sums -rwxr-xr-x 1 root root 253 Mar 28 2002 postinst -rwxr-xr-x 1 root root 194 Mar 28 2002 prerm "md5sums" a data.tar.gz �sszes f�jlj�nak az md5sum kivonat�t. A p�ld�nkban ez �gy n�z ki: 1d15dcfb6bb23751f76a2b7b844d3c57 sbin/parted 4eb9cc2e192f1b997cf13ff0b921af74 usr/share/man/man8/parted.8.gz 2f356768104a09092e26a6abb012c95e usr/share/doc/parted/README.Debian a6259bd193f8f150c171c88df2158e3e usr/share/doc/parted/copyright 7f8078127a689d647586420184fc3953 usr/share/doc/parted/changelog.Debian.gz 98f217a3bf8a7407d66fd6ac8c5589b7 usr/share/doc/parted/changelog.gz Ne agg�dj, az "md5sum", valamint a "postinst" �s a "prerm" f�jlok nem k�telez�ek az els� csomagodn�l, de nem �rt, ha tudod, hogy minden komplett hivatalos Debian csomag tartalmazza ezeket, a korrekts�g �rdek�ben. A "prerm" �s "postinst" �gyel arra, hogy a r�gi dokument�ci�s f�jlok t�rl�djenek, valamint k�sz�lj�n egy doc k�nyvt�rban l�v� hivatkoz�s (link), amely a share/doc k�nyvt�rban l�v� megfelel� dokument�ci�s k�nyvt�rra mutat. $ cat postinst #!/bin/sh set -e # Automatically added by dh_installdocs if [ "$1" = "configure" ]; then if [ -d /usr/doc -a ! -e /usr/doc/parted -a -d /usr/share/doc/parted ]; then ln -sf ../share/doc/parted /usr/doc/parted fi fi # End automatically added section $ cat prerm #!/bin/sh set -e # Automatically added by dh_installdocs if [ \( "$1" = "upgrade" -o "$1" = "remove" \) -a -L /usr/doc/parted ]; then rm -f /usr/doc/parted fi # End automatically added section �s v�g�l a leg�rdekesebb f�jl: $ cat control Package: parted Version: 1.4.24-4 Section: admin Priority: optional Architecture: i386 Depends: e2fsprogs (>= 1.27-2), libc6 (>= 2.2.4-4), libncurses5 (>= \ 5.2.20020112a-1), libparted1.4 (>= 1.4.13+14pre1), libreadline4 (>= \ 4.2a-4), libuuid1 Suggests: parted-doc Conflicts: fsresize Replaces: fsresize Installed-Size: 76 Maintainer: Timshel Knoll <timshel@debian.org> Deszkription: The GNU Parted disk partition resizing program GNU Parted is a program that allows you to create, destroy, resize, move and copy hard disk partitions. This is useful for creating space for new operating systems, reorganizing disk usage, and copying data to new hard disks. . This package contains the Parted binary and manual page. . Parted currently supports DOS, Mac, Sun, BSD, GPT and PC98 disklabels/partition tables, as well as a 'loop' (raw disk) type which allows use on RAID/LVM. Filesystems supported are ext2, ext3, FAT (FAT16 and FAT32) and linux-swap. Parted can also detect HFS (Mac OS), JFS, NTFS, ReiserFS, UFS and XFS filesystems, but cannot create/remove/resize/check these filesystems yet. . The nature of this software means that any bugs could cause massive data loss. While there are no known bugs at the moment, they could exist, so please back up all important files before running it, and do so at your own risk. A "man 5 deb-control" parancs kiad�s�val tov�bbi inform�ci�kat tudhatsz meg a control f�jlr�l. _________________________________________________________________ 4. Gyakorlat Itt az id�, hogy a gyakorlatban is kipr�b�ld magad. Van egy egyszer� "linuxstatus" nev� shell szkriptem, melyet telep�teni akarok, hogy azt�n az "/usr/bin/linuxstatus" k�nyvt�rb�l tudjam haszn�lni. Teh�t el�sz�r a "linuxstatus" f�jl mell� k�sz�ts egy k�nyvt�rat, legyen ennek a neve "debian". $ mkdir -p ./debian/usr/bin $ cp linuxstatus ./debian/usr/bin _________________________________________________________________ 4.1. control Kezdj�k a control f�jllal. A verzi�sz�mnak kell tartalmaznia egy k�t�jelet �s egy tov�bbi Debian csomag verzi�sz�mot, p�ld�ul "1.1-1". Ha a programod csak hordozhat� p�ld�ul shell szkriptekb�l �ll, akkor az "Arhitecture" mez�ben az "all" �rt�ket haszn�ld. A "Depends" mez� kit�lt�s�hez sz�ks�ged van azon csomagok neveire, amelyekben azok a f�jlokat vagy programokat vannak, melyeket a csomagodban l�v� alkalmaz�sok, szkriptek stb. haszn�lnak. Ezen inform�ci�k megszerz�s�hez haszn�lhatod a "dpkg -S <f�jl>" parancsot, p�ld�ul: $ dkpg -S /bin/cat coreutils: /bin/cat A "coreutils" csomagr�l t�bbet megtudhatsz, ha az "apt-cache showpkg coreutils" parancsot haszn�lod. Ez t�bbek k�z�tt ki�rja a jelenleg telep�tett csomag verzi�sz�m�t. Egy�bk�nt k�t tov�bbi m�don is hozz�juthatsz ilyen inform�ci�khoz. A [28]http://www.debian.org/distrib/packages honlapon Debian f�jlokat kereshetsz. T�ltsd ki az oldal alj�n l�v� mez�ket. V�g�l, de nem utols� sorban van egy frank� GUI alkalmaz�s (grafikus program - a ford.), "kpackage", mely k�nyelmes csomagok k�zti b�ng�sz�si lehet�s�get ny�jt, �s egyedi f�jlok alapj�n is lehets�ges csomagot keresni. (kipr�b�ltam, megette az �sszes mem�ri�mat (128M mem + 256M swap), �gy kellett lel�n�m t�voli g�pr�l, sz�val �n ink�bb a karakteres csomagkezel� programok haszn�lat�t javaslom - a ford.) A "Suggests", "Conflicts", �s a "Replaces" stb. mez�ket ki lehet hagyni, ha nem sz�ks�gesek. �me az els� "control" f�jlunk eredm�nye: Package: linuxstatus Version: 1.1-1 Section: base Priority: optional Architecture: all Depends: bash (>= 2.05a-11), textutils (>= 2.0-12), awk, procps (>= \ 1:2.0.7-8), sed (>= 3.02-8), grep (>= 2.4.2-3), coreutils (>= 5.0-5) Maintainer: Chr. Clemens Lee <clemens@kclee.com> Deszkription: Linux system information This szkript provides a broad overview of different system aspects. A "control" f�jlt m�sold a "debian" k�nyvt�rban l�v� "DEBIAN" k�nyvt�rba. $ mkdir -p debian/DEBIAN $ find ./debian -type d | xargs chmod 755 # a Debian Woodyn�l ez sz�ks�ges, n e k�rdezd, hogy mi�rt $ cp control debian/DEBIAN Ha nagy val�sz�n�s�ggel t�bben fogj�k haszn�lni a csomagodat a j�v�ben, akkor seg�thet a [29]Writing Debian package descriptions (Le�r�s k�sz�t�se Debian csomaghoz) cikk. _________________________________________________________________ 4.2. dpkg-deb M�r majdnem k�sz van. Most g�peld be: $ dpkg-deb --build debian dpkg-deb: building package `linuxstatus' in `debian.deb'. $ mv debian.deb linuxstatus_1.1-1_all.deb �h, egyszer�bb volt, mint ahogy azt v�rni lehetett. Most m�r csak telep�tened kell a csomagot a saj�t g�pedre, �s k�sz: root# dpkg -i ./linuxstatus_1.1-1_all.deb G�peld be a "linuxstatus", vagy add ki az "ls -l /usr/bin/linuxstatus" parancsot, hogy siker�lt-e. Ha nem kell m�r a csomagod, akkor g�peld be a "dpkg -r linuxstatus" parancsot �s ellen�rizd, hogy siker�lt-e az elt�vol�t�s. Ha telep�tesz egy �jabb verzi�t, akkor nem kell elt�vol�tanod a r�git. Ha �rdekelnek verzi�sz�moz�si s�m�k �s a n�vv�laszt�si konvenci�k a Debian csomagok tekintet�ben, akkor olvasd el [30]ezt a bekezd�st a [31]Debian Reference (Debian referencia) le�r�sban. _________________________________________________________________ 5. Alapos ellen�rz�s Miut�n megszerezted az els� tapasztalatokat �s elk�sz�tetted a saj�t bin�ris csomagodat, itt az id�, hogy egy kicsit komolyabban is megn�zz�k a dolgot. Vess egy pillant�st az elk�sz�tett csomag min�s�g�re. _________________________________________________________________ 5.1. lintian Szerencs�nkre a Debian projekt a "lint"-hez hasonl� Debian csomag ellen�rz� eszk�zt ny�jt. Ezt az eszk�zt "lintian"-nak h�vj�k. Ha m�g nem telep�tetted a rendszeredre, akkor itt a megfelel� alkalom (apt-get install lintian). Most haszn�ld ezt a nagyszer� eszk�zt a csomagod ellen�rz�s�hez: $ lintian linuxstatus_1.1-1_all.deb E: linuxstatus: binary-without-manpage linuxstatus E: linuxstatus: no-copyright-file W: linuxstatus: prerm-does-not-remove-usr-doc-link W: linuxstatus: postinst-does-not-set-usr-doc-link Uh, ez nem n�z ki valami teljesnek. Kihagytuk a k�zik�nyv oldalt, a copyright f�jlt, meg azokat a "prerm", meg "postinst" szkripteket. _________________________________________________________________ 5.2. Minim�lis dokument�ci� Nem itt kellene le�rnom a k�zik�nyv oldalak k�sz�t�s�nek m�dj�t, egy csom� k�nyv van, ahol egy vagy t�bb fejezet foglalkozik ezzel a t�m�val, ezeken k�v�l pedig elolvashatod a [32]Linux Man Page Howto (Linux k�zik�nyv oldal HOGYAN) le�r�st, mely az interneten el�rhet�. Sz�val tekints�nk el ett�l, �s tegy�k fel, hogy van egy megfelel� k�zik�nyv oldal a szkriptedhez a ./man/man1/linuxstatus.1 helyen. Ugyanez a helyzet a "copyright" f�jllal is. Elegend� p�ld�t tal�lsz a /usr/share/doc k�nyvt�rban a find /usr/share/doc -name "copyright" parancs seg�ts�g�vel. �me a saj�t p�ld�nk a "copyright" f�jlra: linuxstatus Copyright: Chr. Clemens Lee <clemens@kclee.com> 2002-12-07 The home page of linuxstatus is at: http://www.kclee.com/clemens/unix/index.html#linuxstatus The entire code base may be distributed under the terms of the GNU General Public License (GPL), which appears immediately below. Alternatively, all of the source code as any code derived from that code may instead be distributed under the GNU Lesser General Public License (LGPL), at the choice of the distributor. The complete text of the LGPL appears at the bottom of this file. See /usr/share/common-licenses/(GPL|LGPL) A "prerm" �s "postinst" szkripteket egyt�l egyig m�sold be a [33]p�ld�ban szerepl� "parted" csomagb�l, ugyanazzal a n�vvel, a saj�t csomagod k�nyvt�r�ba. Ezeknek a f�jloknak megfelel�en m�k�dni�k kell. Most ism�t k�sz�tsd el a debian csomagunkat, de el�bb a "control" f�jlban megn�veld a verzi�sz�mot 1.1-1-r�l 1.2-1-re (ha �runk egy �j k�zik�nyv oldalt, akkor n�velj�k a saj�t bels� kiad�si sz�mot). Az �j f�jlokat is el kell helyezned a megfelel� helyen: $ mkdir -p ./debian/usr/share/man/man1 $ mkdir -p ./debian/usr/share/doc/linuxstatus $ find ./debian -type d | xargs chmod 755 $ cp ./man/man1/linuxstatus.1 ./debian/usr/share/man/man1 $ cp ./copyright ./debian/usr/share/doc/linuxstatus $ cp ./prerm ./postinst ./debian/DEBIAN $ gzip --best ./debian/usr/share/man/man1/linuxstatus.1 $ $ dpkg-deb --build debian dpkg-deb: building package `linuxstatus' in `debian.deb'. $ mv debian.deb linuxstatus_1.2-1_all.deb A gzip sz�ks�ges, mert a lintian elv�rja, hogy a k�zik�nyv oldal f�jlja, amennyire csak lehet, t�m�r�tve legyen. _________________________________________________________________ 5.3. fakeroot No, akkor n�zz�k, hogy a csomagunk debian tulajdons�gai javultak-e. $ lintian linuxstatus_1.2-1_all.deb E: linuxstatus: control-file-has-bad-owner prerm clemens/clemens != root/root E: linuxstatus: control-file-has-bad-owner postinst clemens/clemens != root/roo t E: linuxstatus: bad-owner-for-doc-file usr/share/doc/linuxstatus/ clemens/cleme ns != root/root E: linuxstatus: bad-owner-for-doc-file usr/share/doc/linuxstatus/copyright clem ens/clemens != root/root E: linuxstatus: debian-changelog-file-missing Hopsz, �jabb gondok. OK, nem adjuk f�l. Val�j�ban �gy n�z ki, hogy t�bb hiba�zenetet kaptunk ugyanarra a probl�m�ra. Minden f�jl a "clemens" felhaszn�l�i �s csoport azonos�t�val lett becsomagolva, m�g val�sz�n�leg a legt�bb felhaszn�l� jobban �r�lne, ha "root/root" felhaszn�l�k�nt lenn�nek telep�tve. Ezt a probl�m�t k�nnyed�n orvosolhatod a "fakeroot" seg�dprogram haszn�lat�val. Sz�val jav�tsd ki, �s gyorsan ellen�rizd le (a changelog kimenettel most ne foglalkozz): $ fakeroot dpkg-deb --build debian dpkg-deb: building package `linuxstatus' in `debian.deb'. $ mv debian.deb linuxstatus_1.2-1_all.deb $ lintian linuxstatus_1.2-1_all.deb E: linuxstatus: debian-changelog-file-missing Nagyszer�, de m�g egy f�jlt hozz� kell adnunk a csomaghoz. _________________________________________________________________ 5.4. Tov�bbi dokument�ci� A "doc/linuxstatus" k�nyvt�rban l�v� "changelog" mell� m�g egy "changelog.Debian" f�jlt is kell �rni. Mindkett�t gzip-pel kell t�m�r�teni. �me egy p�lda a "changelog" f�jlra: linuxstatus (1.2-1) * A lintian �ltal jegyzett hib�k jav�t�sa. -- Chr. Clemens Lee <clemens@kclee.com> 2002-12-13 itt pedig egy "changelog.Debian" p�lda: A linuxistatus Debian karbantart�ja �s a f� v�ltozat szerz�je megegyezik, ez�rt n�zd meg a Debian valtoz�sok changelogj�t is. A [34]changelog f�jl form�tum�t illet�en a Debian ir�nyvonal m�g r�szletesebb. Rem�lhet�leg most k�vetkezik az utols� l�p�s: $ cp ./changelog ./changelog.Debian ./debian/usr/share/doc/linuxstatus $ gzip --best ./debian/usr/share/doc/linuxstatus/changelog $ gzip --best ./debian/usr/share/doc/linuxstatus/changelog.Debian $ fakeroot dpkg-deb --build ./debian dpkg-deb: building package `linuxstatus' in `debian.deb'. $ mv debian.deb linuxstatus_1.2-1_all.deb $ lintian linuxstatus_1.2-1_all.deb Ah, m�r nem panaszkodik t�bb� a lintian :-). Most root felhaszn�l�k�nt telep�theted a csomagot a r�gire, a megszokott "dpkg -i" paranccsal. root# dpkg -i ./linuxstatus_1.2-1_all.deb (Reading database ... 97124 files and directories currently installed.) Preparing to replace linuxstatus 1.1-1 (using linuxstatus_1.2-1_all.deb) ... Unpacking replacement linuxstatus ... Setting up linuxstatus (1.2-1) ... _________________________________________________________________ 6. �sszegz�s Hogy ne kavarodj �ssze, id�zz�k fel a bin�ris Debian csomag elk�sz�t�s�nek �sszes l�p�s�t. A sz�ks�ges f�jlok: 1. egy vagy t�bb bin�ris futtathat� f�jl, vagy shell szkript 2. egy k�zik�nyv oldal minden egyes futtathat� f�jlhoz 3. "control" f�jl 4. "copyright" f�jl 5. "changelog" �s "changelog.Debian" f�jl A helyi "debian" k�nyvt�r el�k�sz�t�se: 1. k�sz�tsd el a "debian/usr/bin" k�nyvt�rat (vagy ahov� a futtathat� f�jlokat szeretn�d telep�teni) 2. k�sz�tsd el a "debian/usr/share/man/man1" k�nyvt�rat (vagy amelyik szekci�ba a k�zik�nyv oldalt szeretn�d elhelyezni) 3. k�sz�tsd el a "debian/DEBIAN" k�nyvt�rat 4. k�sz�tsd el a "debian/usr/share/doc/<csomag_nev>" k�nyvt�rat 5. gy�z�dj meg arr�l, hogy a "debian" k�nyvt�rban l�v� �sszes alk�nyvt�r 0755 hozz�f�r�si joggal rendelkezik M�sold be a f�jlokat a helyi "debian" fa-strukt�r�ba: 1. m�sold a futtathat� f�jlokat a "debian/usr/bin" k�nyvt�rba (vagy ahov� telep�teni szeretn�d �ket) 2. m�sold a k�zik�nyv oldalt a "debian/usr/share/man/man1 k�nyvt�rba 3. m�sold a "control" f�jlt a "debian/DEBIAN" k�nyvt�rba 4. m�sold a "copyright", "changelog" �s "changelog.Debian" f�jlokat a "debian/usr/share/doc/<package_name>" k�nyvt�rba 5. t�m�r�tsd gzip programmal a k�zik�nyv oldalt, "copyright", "changelog" �s "changelog.Debian" f�jlokat, a "--best" opci�val a helyi "debian" k�nyvt�rstrukt�r�ba K�sz�tsd el �s ellen�rizd le a Debian csomagot: 1. haszn�ld a "dpkg-deb --build" parancsot a "fakeroot" seg�ts�g�vel a "debian" k�nyvt�rra 2. nevezd �t az eredm�ny�l kapott "debian.deb" f�jlt a v�gs� csomagn�vre, benne a verzi�sz�mmal �s az architekt�r�ra vonatkoz� inform�ci�val 3. ellen�rizd a .deb f�jlt a "lintian" seg�dprogrammal, hogy megfelel-e a Debian ir�nyvonalnak _________________________________________________________________ 7. Egy�b Sok dolog van amit ez a HOGYAN nem fed le, mint p�ld�ul hogyan �ll�tsuk el� a Unix d�monokat, a konfigur�ci�s f�jlokat �s m�g sok m�st. De a legfontosabb, kihangs�lyozom megint a Debian karbantart�k sz�m�ra, hogy a csomagok forr�sokb�l �llnak, nem pedig bin�risokb�l. Ezek sosem hatnak egym�sra k�zvetlen�l a bels� bin�ris csomagokkal. Val�j�ban csak a "dpkg-deb" �s "dpkg" fejleszt�k sz�m�ra sz�ks�ges tudni, hogy mik ezek, egy�bk�nt felesleges. Ha egy fejleszt� �gy hat�rozott, hogy elmondja valakinek mik�nt lehet Debian csomagot elk�sz�teni, biztosan elmagyar�zza azt is, hogyan lehet a forr�s-csomagot (source package) k�sz�teni. M�sr�szt nem minden fejleszt� akarja kiterjeszteni a szoftver�t Debian al� (egyel�re), m�gis haszn�lja az olyan csomagkezel�ket, mint a "dpkg", a csomag forr�sk�dj�nak kiad�sa n�lk�l. Ami engem illet, �n mindaddig kiadom a szabad projektjeimet tar.gz f�jlk�nt a forr�sk�ddal �s egyebekkel egy�tt az �sszes architekt�r�hoz, m�g egyre t�bb ".deb" csomagot tervezek felk�n�lni a Debian felhaszn�l�knak, akik csak telep�teni �s haszn�lni akarj�k a szoftveremet. Ha valaki k�vetkez� l�p�sk�nt Debian csomagk�nt is k�zz� szeretn� tenni szoftver�t, �gy el�sz�r a Debian New Maintainers' Guide (�j Debian karbantart�k k�zik�nyve) valamint [35]Debian Policy Manual (Debian ir�nyvonal k�zik�nyv) le�r�sokat tanulm�nyozza el�sz�r. Ha Debian forr�s csomag k�sz�t�s�be fogsz bele, akkor l�togass el a [36]debian-mentors (debian-tanacsad�k) levelez� list�j�ra is, hogy tapasztalatokat szerezz, bekapcsol�dj a p�rbesz�dbe, melynek sor�n tippeket kaphatsz az el�fordul� probl�m�k megold�s�ra. _________________________________________________________________ 8. K�sz�netnyilv�n�t�s K�sz�net az al�bbi embereknek: * Colin Watson: egy mondattal hozz�j�rult a HOGYANhoz, �s visszajelez�s�vel seg�tett a szerkezet pontos�t�sban �s a c�mad�sban, * Bill Allombert: hozz�j�rult egy mondattal az "Egyebek" fejezethez, valamint egy visszajelz�s�ben meger�s�tette Colin egyik mondat�t, * Santiago Vila: az "md" az csak egy helyi alias, �s a (Unix) vil�g szabv�nyos�tott v�ltozata az "mkdir", valamint * Tabatha Marshall: a [37]TLDP projektb�l, �ltal�nos seg�ts�g, * Joey Hess, Carlo Perassi, �s Joe Riel: kisebb korrekci�k, * Claudio Cattazzo: a saj�t xml dokumentumom docbook form�tumra konvert�l�sa, mely sz�mos kisebb korrekci�t �s fejleszt�st eredm�nyezett [2003.10.04]. * Frank Lichtenheld: a HTML oldalak gener�l�sakor fell�p� hib�kra f�lh�vta a figyelmet, valamint felvetette a "dpkg -S <f�jl>" parancs haszn�lat�t, amikor egy bizonyos f�jlra keres�nk a csomagban [2003.12.13]. * Hugh Hartmann: elk�sz�tette a HOGYAN [38]olasz ford�t�s�t, Claudio Cattazzo: lektor�lta a ford�t�st [2003.12.13]. _________________________________________________________________ 9. Hivatkoz�sok Debian New Maintainers' Guide (�j Debian Karbantart�k �tmutat�ja): [39]http://www.debian.org/doc/maint-guide/ Debian: [40]http://www.debian.org/ The Debian Reference (Debian referencia): [41]http://www.debian.org/doc/manuals/reference/reference.en.html Debian csomagok: [42]http://www.debian.org/distrib/packages Writing Debian package descriptions (Le�r�s k�sz�t�se Debian csomaghoz): [43]http://people.debian.org/~walters/descriptions.html Linux Man Page Howto (Linux k�zik�nyv oldal HOGYAN): [44]http://www.tldp.org/HOWTO/mini/Man-Page.html Debian Policy Manual (Debian ir�nyvonal k�zik�nyv oldal): [45]http://www.debian.org/doc/debian-policy/ Debian Mentors (debian tan�csad�s): [46]http://lists.debian.org/debian-mentors/ The Linux Documentation Project (a Linux Dokument�ci�s Projekt honlapja): [47]http://www.tldp.org/ Plusz az �n saj�t kis Unix honlapom: [48]http://www.kclee.com/clemens/unix/ References 1. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN30 2. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN37 3. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN43 4. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN49 5. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN61 6. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN67 7. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN70 8. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN75 9. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN89 10. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN93 11. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN109 12. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN122 13. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN125 14. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN132 15. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN147 16. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN156 17. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN170 18. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN232 19. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN243 20. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#AEN265 21. http://www.debian.org/doc/maint-guide/ 22. http://www.debian.org/ 23. http://www.debian.org/doc/manuals/reference/reference.en.html 24. http://www.debian.org/doc/maint-guide/ 25. mailto: hamisan[kukac]mora.u-szeged[pont]hu 26. mailto: dacas[kukac]freemail[pont]hu 27. http://tldp.fsf.hu/ 28. http://www.debian.org/distrib/packages 29. http://people.debian.org/~walters/descriptions.html 30. http://www.debian.org/doc/manuals/reference/ch-system.en.html#s-pkgname 31. http://www.debian.org/doc/manuals/reference/reference.en.html 32. http://www.tldp.org/HOWTO/mini/Man-Page.html 33. file://localhost/home/dacas/tldp/convert/Debian-Binary-Package-Building-HOWTO-hu.html#postinst 34. http://www.debian.org/doc/debian-policy/ch-miscellaneous.html#s-dpkgchangelog 35. http://www.debian.org/doc/debian-policy/ 36. http://lists.debian.org/debian-mentors/ 37. http://www.tldp.org/ 38. http://it.tldp.org/HOWTO/Debian-Binary-Package-Building-HOWTO/index.html 39. http://www.debian.org/doc/maint-guide/ 40. http://www.debian.org/ 41. http://www.debian.org/doc/manuals/reference/reference.en.html 42. http://www.debian.org/distrib/packages 43. http://people.debian.org/~walters/descriptions.html 44. http://www.tldp.org/HOWTO/mini/Man-Page.html 45. http://www.debian.org/doc/debian-policy/ 46. http://lists.debian.org/debian-mentors/ 47. http://www.tldp.org/ 48. http://www.kclee.com/clemens/unix/