1 508
contributi
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
Riga 2: | Riga 2: | ||
==Introduzione== | ==Introduzione== | ||
Con questa guida vedremo di scoprire i metapacchetti e capire come utilizzarli/gestirli nel nostro sistema. Per capire alcuni concetti spiegati si darà per sottinteso la conoscenza del funzionamento del gestore di pacchetti '''Apt-Get'''. Per chi non conoscesse il sistema o semplicemente | Con questa guida vedremo di scoprire i metapacchetti e capire come utilizzarli/gestirli nel nostro sistema. Per capire alcuni concetti spiegati si darà per sottinteso la conoscenza del funzionamento del gestore di pacchetti '''Apt-Get'''. Per chi non conoscesse il sistema o semplicemente desideri un riassunto a riguardo, vi rimando a una nostra introduzione : [[Introduzione_all'_Apt_System]]. Il concetto base da capire è quello di ''dipendenza''. | ||
==Definizione== | ==Definizione== | ||
Riga 16: | Riga 16: | ||
porteranno allo stesso risultato, sempre per via di dipendenze installate per un pacchetto che non esiste più.<br /><br /> | porteranno allo stesso risultato, sempre per via di dipendenze installate per un pacchetto che non esiste più.<br /><br /> | ||
{{Box|NOTA BENE:|questo comportamento dei pacchetti è in realtà un sistema molto ben architettato per "pulire" il sistema da pacchetti "inutili" (o meglio, per meglio dire, non più utili). Ad esempio: se ho installato il pacchetto Y per soddisfare una dipendenza del pacchetto X, eliminato X il pacchetto Y non mi servirà più, essendo stato installato unicamente per far funzionare X. Immaginando di aver appena eliminato il pacchetto X, ''Aptitude'' andrà automaticamente ad eliminare il pacchetto Y "ricordandosi" di averlo installato come dipendenza del pacchetto X. <code>apt-get autoremove</code> "vedrà" il pacchetto Y come installato da ''dipendenza'' e lo eliminerà portando allo stesso risultato.}} | |||
===Installare un metapacchetto=== | ===Installare un metapacchetto=== | ||
In questo caso non occorre nessuna attenzione particolare: installeremo il metapacchetto come qualsiasi altro pacchetto con il nostro gestore preferito (aptitude, apt-get, synaptic, | In questo caso non occorre nessuna attenzione particolare: installeremo il metapacchetto come qualsiasi altro pacchetto con il nostro gestore preferito (aptitude, apt-get, synaptic,etc.), il quale si "porterà dietro" tutti i pacchetti del caso (come sue dipendenze). | ||
===Rimuovere un metapacchetto=== | ===Rimuovere un metapacchetto=== | ||
Riga 40: | Riga 40: | ||
====Rimuovere uno o più pacchetti della ''suite''==== | ====Rimuovere uno o più pacchetti della ''suite''==== | ||
In questo caso, come già detto in precedenza, la rimozione di uno o più pacchetti della suite, | In questo caso, come già detto in precedenza, la rimozione di uno o più pacchetti della suite, porterà alla rimozione del metapacchetto principale (essendo esso stesso senza una o più dipendenze soddisfatte). A questo punto, senza il metapacchetto che faceva da "scheletro" alla ''suite'', i pacchetti di quest'ultima verranno eliminati da ''aptitude'' o da ''apt-get autoremove''.<br /> | ||
Per eliminare dunque dei pacchetti da una ''suite'' utilizzeremo ''apt-get'' e ''aptitude'' in modo combinato. Facciamo un esempio: | Per eliminare dunque dei pacchetti da una ''suite'' utilizzeremo ''apt-get'' e ''aptitude'' in modo combinato. Facciamo un esempio: | ||
Riga 68: | Riga 68: | ||
<pre>$ equivs-control controller</pre> | <pre>$ equivs-control controller</pre> | ||
il quale creerà un file | il quale creerà un file <code>controller</code> per il nostro metapacchetto (il nome è arbitrario, potete scegliere quello che volete). Il suo aspetto è il seguente (dopo averlo aperto in un editor qualsiasi): | ||
<pre> | <pre> | ||
Riga 103: | Riga 103: | ||
<pre>$ equivs-build controller</pre> | <pre>$ equivs-build controller</pre> | ||
che creerà il metapacchetto | che creerà il metapacchetto <code>.deb</code> che potremo poi installare come qualsiasi pacchetto | ||
===Esempio pratico=== | ===Esempio pratico=== | ||
Riga 111: | Riga 111: | ||
<pre>$ equivs-control controller</pre> | <pre>$ equivs-control controller</pre> | ||
Editiamo poi il file | Editiamo poi il file <code>controller</code> nel modo seguente (sulla base della guida citata): | ||
<pre> | <pre> | ||
Riga 135: | Riga 135: | ||
# Extra-Files: <comma-separated list of additional files for the doc directory> | # Extra-Files: <comma-separated list of additional files for the doc directory> | ||
Description: installa codec per DVD e mp3 | Description: installa codec per DVD e mp3 | ||
Questo metapacchetto installa le librerie per la riproduzione di DVD e mp3. | |||
Ricordiamo di aggiungere i repository debian-multimedia (deb http://www.debian-multimedia.org lenny main) all'interno del proprio /etc/apt/sources.list | |||
</pre> | </pre> | ||
Riga 142: | Riga 143: | ||
<pre>$ equivs-build controller</pre> | <pre>$ equivs-build controller</pre> | ||
Se tutto sarà andato a buon fine (occhio alla sintassi!) otterremo il pacchetto | Se tutto sarà andato a buon fine (occhio alla sintassi!) otterremo il pacchetto <code>codec-dvd-mp3_0.1_all.deb</code> nella directory da dove abbiamo lanciato i comandi. Per dare un'ennesima verifica al pacchetto, daremo il comando: | ||
<pre>$ dpkg --info codec-dvd-mp3_0.1_all.deb</pre> | <pre>$ dpkg --info codec-dvd-mp3_0.1_all.deb</pre> | ||
Riga 149: | Riga 150: | ||
<pre> | <pre> | ||
Package: codec-dvd-mp3 | |||
Version: 0.1 | |||
Architecture: all | |||
Maintainer: Debianizzati <info@debianizzati.org> | |||
Installed-Size: 36 | |||
Depends: libfaad2-0, libmp4-0, libfaac0, alsamixergui, toolame, lame, libmp3lame0, libdvdnav4, libdvdread3, libdvdcss2, w32codecs, ffmpeg | |||
Recommends: debian-multimedia-keyring | |||
Section: misc | |||
Priority: optional | |||
Description: installa codec per DVD e mp3 | |||
Questo metapacchetto installa le librerie per la riproduzione di DVD e mp3. | |||
</pre> | Ricordiamo di aggiungere i repository debian-multimedia (deb http://www.debian-multimedia.org lenny main) all'interno del proprio /etc/apt/sources.list</pre> | ||
Sarebbe bello ora installare il nostro pacchetto con ''dpkg'', ma dovremmo sapere che non è possibile. Questo | Sarebbe bello ora installare il nostro pacchetto con ''dpkg'', ma dovremmo sapere che non è possibile. Questo perché ''dpkg'' non sa risolvere le dipendenze come ''apt-get''. Dovremmo allora inserire il nostro pacchetto in un repository (esistente o creandolo anche in locale -> [[Creare_un_Repository_Debian]]) oppure forzare le dipendenze all'installazione (opzione <code>--force-depends</code> da aggiungere al classico <code>dpkg -i</code>) e installare le dipendenze manualmente con un manager come ''aptitude''. | ||
---- | ---- | ||
[[Utente:Brunitika|Brunitika]] 16:49, 8 apr 2009 (CEST) | [[Utente:Brunitika|Brunitika]] 16:49, 8 apr 2009 (CEST) | ||
---- | ---- | ||
[[Categoria:Apt]] | [[Categoria:Apt]] |
contributi