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/