806
contributi
m (→Metapacchetti) |
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' | Sotto debian, i binari hanno il suffisso .deb (c'è la possibilità anche | ||
di usare rpm, ma questa | 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 | 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 | 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, | |||
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 | 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' | 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 | 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, | Nel caso si stia installando un pacchetto sorgente, è bene non seguire | ||
la procedura ./configure;make;make install; | la procedura ./configure;make;make install; perchè il pacchetto non | ||
verrà tracciato, non si potrà prenderne informazioni tramite dpkg-query | |||
e per la rimozione | e per la rimozione bisognerà procedere manualmente, con il rischio di | ||
'sporcare' la distro. | 'sporcare' la distro. | ||
E' meglio usare strumenti quali dpkg- | 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 | Esiste un tipo particolare di pacchetto detto metapacchetto. Questo è un | ||
pacchetto che in | 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 | 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 | |||
come kdebase occupare solo poco | 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 | 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. |
contributi