Pacchetti binari e sorgenti: differenze tra le versioni

Nessun cambiamento nella dimensione ,  14 giu 2005
m
→‎Pacchetti sorgenti: typo in dpkg-buildpackage
m (→‎Pacchetti sorgenti: typo in dpkg-buildpackage)
Riga 7: Riga 7:
I pacchetti binari sono archivi contenenti eseguibili, file di  
I pacchetti binari sono archivi contenenti eseguibili, file di  
configurazione e documentazione che assieme formano un'applicazione.
configurazione e documentazione che assieme formano un'applicazione.
Sotto debian, i binari hanno il suffisso .deb (c'la possibilit� anche  
Sotto debian, i binari hanno il suffisso .deb (c'è la possibilità anche  
di usare rpm, ma questa un'altra storia...).
di usare rpm, ma questa è un'altra storia...).
Vediamo cosa contiene un archivio .deb:
Vediamo cosa contiene un archivio .deb:


Riga 70: Riga 70:
e dopo l'installazione o la rimozione.
e dopo l'installazione o la rimozione.
Il file control contiene il nome del pacchetto, la sua versione, la  
Il file control contiene il nome del pacchetto, la sua versione, la  
sezione, la priorit�, l'architettura per cui stato compilato il  
sezione, la priorità, l'architettura per cui è stato compilato il  
pacchetto, le dipendenze, il maintainer del pacchetto e la sua  
pacchetto, le dipendenze, il maintainer del pacchetto e la sua  
descizione. Diamogli un'occhiata.
descizione. Diamogli un'occhiata.
Riga 105: Riga 105:
information is available at http://www.apache.org/.</pre>
information is available at http://www.apache.org/.</pre>


Un pacchetto pu� avere priorit� required, ossia necessario al funzionamento
Un pacchetto può avere priorità required, ossia è necessario al funzionamento
del sistema, important, quindi costituisce la base del sistema, standard,
del sistema, important, quindi costituisce la base del sistema, standard,
cio� i pacchetti comuni presenti su sistemi non troppo minimali, optional,
cioè i pacchetti comuni presenti su sistemi non troppo minimali, optional,
i pacchetti totalmente opzionali, quindi X11, Emacs, e via dicendo, e infine  
i pacchetti totalmente opzionali, quindi X11, Emacs, e via dicendo, e infine  
extra, che contiene pacchetti aventi caratteristiche particolari che li  
extra, che contiene pacchetti aventi caratteristiche particolari che li  
Riga 127: Riga 127:
Vengono elencati i file di configurazione che verrano creati.
Vengono elencati i file di configurazione che verrano creati.
Gli scripts di cui parlavo prima sono postinst, postrm, preinst e prerm,  
Gli scripts di cui parlavo prima sono postinst, postrm, preinst e prerm,  
che si occupano come gi� detto delle operazione pre e post  
che si occupano come già detto delle operazione pre e post  
installlazione/rimozione.
installlazione/rimozione.


Riga 167: Riga 167:
irssi-text_0.8.9-3.diff.gz  irssi-text_0.8.9.orig.tar.gz</pre
irssi-text_0.8.9-3.diff.gz  irssi-text_0.8.9.orig.tar.gz</pre


Il file .dsc contiene la versione del software, l'architettura per cui
Il file .dsc contiene la versione del software, l'architettura per cui è
stato scritto, la dipendenze da soddisfare e gli hash dei due archivi  
stato scritto, la dipendenze da soddisfare e gli hash dei due archivi  
per verificarne l'integrit�.
per verificarne l'integrità.


<pre> # cat irssi-text_0.8.9-3.dsc
<pre> # cat irssi-text_0.8.9-3.dsc
Riga 197: Riga 197:
-----END PGP SIGNATURE-----</pre>
-----END PGP SIGNATURE-----</pre>


I file di control gi� visti nei pacchetti binari sono anche qui,  
I file di control già visti nei pacchetti binari sono anche qui,  
contenuti nella cartella debian dell'archivio.
contenuti nella cartella debian dell'archivio.


Riga 213: Riga 213:
changelog  control    dirs      menu                rules</pre>
changelog  control    dirs      menu                rules</pre>
Nel caso si stia installando un pacchetto sorgente, bene non seguire  
Nel caso si stia installando un pacchetto sorgente, è bene non seguire  
la procedura ./configure;make;make install; perch� il pacchetto non  
la procedura ./configure;make;make install; perchè il pacchetto non  
verr� tracciato, non si potr� prenderne informazioni tramite dpkg-query  
verrà tracciato, non si potrà prenderne informazioni tramite dpkg-query  
e per la rimozione bisogner� procedere manualmente, con il rischio di  
e per la rimozione bisognerà procedere manualmente, con il rischio di  
'sporcare' la distro.
'sporcare' la distro.
E' meglio usare strumenti quali dpkg-buildbackage e apt-build (per  
E' meglio usare strumenti quali dpkg-buildpackage e apt-build (per  
cui rimando alle pagine di man) per avere i vantaggi della compilazione  
cui rimando alle pagine di man) per avere i vantaggi della compilazione  
senza 'sporcare' il sistema.
senza 'sporcare' il sistema.
Riga 224: Riga 224:
==Metapacchetti==
==Metapacchetti==


Esiste un tipo particolare di pacchetto detto metapacchetto. Questo un  
Esiste un tipo particolare di pacchetto detto metapacchetto. Questo è un  
pacchetto che in realt� non contiene alcun eseguibile o sorgente. Serve  
pacchetto che in realtà non contiene alcun eseguibile o sorgente. Serve  
semplicemente per installare tutto l'insieme di pacchetti (a volte a  
semplicemente per installare tutto l'insieme di pacchetti (a volte a  
loro volta metapacchetti) che lo costituisce.
loro volta metapacchetti) che lo costituisce.
Un esempio kde:
Un esempio è kde:


<pre> # ls -l
<pre> # ls -l
Riga 234: Riga 234:
-rw-r--r--  1 root root 6486276 Jan 26 17:32 kdebase_2.2.2-14.9_i386.deb</pre>
-rw-r--r--  1 root root 6486276 Jan 26 17:32 kdebase_2.2.2-14.9_i386.deb</pre>


Gi� le dimensioni lasciano presagire qualcosa: come pu� un pacchetto  
Già le dimensioni lasciano presagire qualcosa: come può un pacchetto  
come kdebase occupare solo poco pi� di 6 Mb? Spacchettiamolo:
come kdebase occupare solo poco più di 6 Mb? Spacchettiamolo:


<pre> # ar -x  kdebase_2.2.2-14.9_i386.deb
<pre> # ar -x  kdebase_2.2.2-14.9_i386.deb
Riga 301: Riga 301:
Includes:  kicker, kwin, kdesktop and others...</pre>
Includes:  kicker, kwin, kdesktop and others...</pre>


In realt�, vediamo che a costituire il cuore di kde sono le sue  
In realtà, vediamo che a costituire il cuore di kde sono le sue  
dipendenze. Senza i metapacchetti bisognerebbe installare uno per uno i  
dipendenze. Senza i metapacchetti bisognerebbe installare uno per uno i  
pacchetti che costituiscono kde.
pacchetti che costituiscono kde.
806

contributi