Repository & pinning: differenze tra le versioni

Riga 226: Riga 226:
deb http://ftp.it.debian.org/debian testing main
deb http://ftp.it.debian.org/debian testing main
</pre>
</pre>
ed eseguire un aggiornamento della lista dei pacchetti:
<pre>
# apt-get update
</pre>
Di seguito si mostrano diverse possibilità, in base alla configurazione di pinning desiderata.
{{Warningbox | Il pericolo è che a ogni aggiornamento, quanto più aumenta la distanza tra la versione di un pacchetto in ''testing'' e quella in ''stable'', aumenti la possibilità che nuove dipendenze da ''testing'' siano necessarie, rendendo la provenienza dei pacchetti della propria distribuzione sempre più mista.
In tal caso è raccomandabile invece optare per un passaggio a ''testing'', dato che non si godrebbe più dei benefici di un ambiente stabile e testato.}}
=== Pinning per un singolo pacchetto, bloccando tutti gli altri ===
Creare il file <code>/etc/apt/preferences.d/miopinning</code> con questo contenuto:
Creare il file <code>/etc/apt/preferences.d/miopinning</code> con questo contenuto:
<pre>
<pre>
Package: nomepacchetto
Package: nomepacchetto
Pin: release a=testing
Pin: release a=testing
Pin-Priority: 991
Pin-Priority: 990


Package: *
Package: *
Riga 236: Riga 247:
Pin-Priority: -1
Pin-Priority: -1
</pre>
</pre>
e, infine, eseguire un aggiornamento della lista dei pacchetti:
 
Adesso è possibile installare il pacchetto "nomepacchetto" da ''testing'' con:
<pre>
<pre>
# apt-get update
# apt-get install nomepacchetto
</pre>
</pre>
Adesso è possibile installare il pacchetto "nomepacchetto" da ''testing'' con:
oppure in caso di dipendenze con:
<pre>
<pre>
# apt-get -t testing install nomepacchetto
# apt-get -t testing install nomepacchetto
</pre>
</pre>
Si noti che non si avranno aggiornamenti per i pacchetti che vengono installati con questo metodo. Per ottenere questo risultato bisogna rieseguire il precedente comando oppure impostare il pinning sia per "nomepacchetto" sia per *tutte* le sue [[dipendenze]]. In quest'ultimo caso prestare particolare attenzione al fatto che, in ''testing'', le dipendenze possono essere rimosse o aggiunte.<br/>
Con questo secondo comando è superfluo l'uso del pinning per "nomepacchetto", se non per ricordarsi la configurazione desiderata.
Un esempio potrebbe essere:
 
Si noti anche che non si avranno aggiornamenti per i pacchetti che vengono installati con questo metodo, a meno che riguardino soltanto quel singolo pacchetto e nessun altro. In caso contrario bisogna rieseguire il precedente comando oppure impostare il pinning come una delle due configurazioni trattate in seguito.
 
=== Pinning per un pacchetto e tutte le sue dipendenze, bloccando il resto ===
Per permettere l'installazione e l'aggiornamento automatico di un pacchetto da testing con tutte le sue dipendenze, basta creare il file <code>/etc/apt/preferences.d/miopinning</code> con questo contenuto:
<pre>
<pre>
Package: nomepacchetto dipendenza1 dipendenza2 dipendenza3
Package: nomepacchetto dipendenza1 dipendenza2 dipendenza3 ...
Pin: release a=testing
Pin: release a=testing
Pin-Priority: 991
Pin-Priority: 990


Package: *
Package: *
Riga 255: Riga 271:
Pin-Priority: -1
Pin-Priority: -1
</pre>
</pre>
Ora è sufficiente:
<pre>
# apt-get install nomepacchetto
</pre>
per installarlo e inoltre il pacchetto sarà tenuto aggiornato in automatico, a meno che siano aggiunte nuove dipendenze alla nuova versione disponibile. Infatti in [[testing]] le dipendenze possono essere rimosse o aggiunte.
=== Pinning per tutti i pacchetti di testing e backports ===
Questa possibilità consente gli aggiornamenti automatici dei pacchetti installati manualmente da testing, permettendone l'installazione anche in assenza di altre versioni disponibili. È sufficiente scrivere il file <code>/etc/apt/preferences.d/miopinning</code> come segue:
<pre>
Package: *
Pin: release a=wheezy-backports
Pin-Priority: 200
Package: *
Pin: release a=testing
Pin-Priority: 100
</pre>
Dove ''wheezy-backports'' è il nome della [[suite]] (e il [[codename]], che sono uguali per i [[backports]]) dei repository backports di [[wheezy]] (l'attuale [[stable]]). È consigliabile specificare la nuova priorità a prescindere dalla loro presenza, altrimenti se attivati saranno sempre nascosti da ''testing'', avendo di default una priorità di 100 e contenendo versioni non più aggiornate.
Ora basterà:
<pre>
# apt-get -t testing install nomepacchetto
</pre>
per installare nuovi pacchetti da testing, che saranno aggiornati in automatico. Si noti però che perfino in questo caso gli aggiornamenti potrebbero comunque richiedere l'uso dell'opzione <code>-t</code>, se nuove dipendenze fossero aggiunte in ''testing''.


== Testing con unstable==
== Testing con unstable==
3 581

contributi