Newsgroup: it.comp.os.linux.iniziare
Titolo: Pinning

Ciao,
 
parliamo di debian squeeze.
Ho letto la guida circa l'utilizzo del pinning per installare versioni 
più aggiornate di alcuni pacchetti (contenute nei repositori di wheezy) 
senza però fare l'upgrade di tutto il sistema.
 
Onestamente ho ancora qualche dubbio.
Facciamo un esempio concreto:
 
qt4-dev-tools contiene il pacchetto libqt4-core
 
è fermo alla 4.6.3 per squeeze mentre in wheezy è alla 4.7.4.
 
Che operazioni dovrei fare per poter installare il pacchetto presente in 
wheezy (con le sue dipendenze) senza rischiare di aggiornare l'intero 
sistema?
 
Grazie!
Marco

 sistema?
]zac[
 
 
La soluzione migliore e' quella di lasciare che si aggiorni tutto quello che 
serve, con il problema che spesso si aggiorna mezzo sistema.
 
L'installazione parziale e forzata e' fattibile se si sa quello che si fa e 
se si e' in grado di recuperare un sistema che non si avvia.
 
 
Per esempio installare forzatamente e manualmente (senza il gestore delle 
dipendenze) le librerie qt di una versione diversa e' possibile, anche 
mantenendo quella ufficiale.
 
Ma protrebbe spuntare qualche conflitto con qualche programma di kde e kde 
potrebbe non piu' avviarsi (problema facile da risolvere si ha un minimo di 
pratica con la disintallazione manuale e rinstallazione dei pacchetti e se 
si hanno i pacchetti sotto mano o raggiungibili).
 
 
 
In sintesi non e' impossibile, ma le prime volte si finisce spesso per 
bloccare qualcosa e non sapere come sbloccarlo.

 bloccare qualcosa e non sapere come sbloccarlo.
 
 
Ciao grazie della risposta.
In effetti anche su un forum mi hanno suggerito di aggiornare tutto il 
sistema, o meglio di installare direttamente wheezy (perché 
l'aggiornamento mi dava problemi).
 
In questo caso era fattibile perché è una macchina di sviluppo e la uso 
solo per questo, sarebbe più scomodo se fosse il pc di normale utilizzo...
 
Marco

 sistema?
 
Puoi creare un backport [1], se non c'è già.
 
[1] 
http://backports.debian.org
 

 sistema?
 
Lo ricompili partendo dai repository di wheezy (apt-get source pacchetto; 
apt-get build-dep pacchetto, dpkg-buildpackage) ma, in casi come questo, ho 
sempre trovato piu` conveniente aggiornare l'intero sistema
 
Enrico

 sempre trovato piu` conveniente aggiornare l'intero sistema
 
 
La cosa che non mi spiego č che se tento di aggiornare solo quel 
pacchetto mi tira dietro tante di quelle dipendenze che praticamente č 
meglio aggiornare tutto (o reinstallare... come nel mio caso).
 
Invece scaricando QtSdk dal sito Nokia, che contiene le stesse cose, si 
installa senza fare una piega e senza scombinare il tutto.
 
Per quale motivo un pacchetto di un software č cosě differente dal 
software stesso?
 
Marco
 

 software stesso?
 
Se parliamo di pacchetto deb (ma anche di pacchetto rpm, direi), il motivo 
e` drammaticamente semplice: esso e` pensato per una distribuzione 
differente dalla tua e di conseguenza richiede pacchetti differenti per 
funzionare. Quindi, gli unici modi per ovviare ad una situazione del genere 
sono o utilizzare la distribuzione richiesta dal pacchetto, o ricreare il 
pacchetto per la tua distribuzione
 
Enrico

 funzionare.
 
 
Perdona l'ignoranza, io parlo dei pacchetti disponibili nei repository 
ufficiali debian. Quelli insomma che si installano tramite aptitude.
 
In questo contesto cosa intendi per "sono pensati per una distribuzione 
differente dalla tua" ?
 
Grazie ancora
Marco
 

 differente dalla tua" ?
 
Che tu stai installando un pacchetto pensato per Testing su di una Stable. 
Ora, come minimo quel pacchetto richiede pacchetti piu` recenti rispetto a 
quelle presenti su Stable, aggiornando di conseguenza il sistema a causa di 
un effetto domino incontrollabile. A questo punto, se non vuoi aggiornare 
l'intero sistema (non ne capisco il perche`), l'unica maniera per evitare 
questo problema e` ricreare il pacchetto mediante i comandi che ti ho 
proposto due messaggi fa'
 
Enrico

 meglio aggiornare tutto (o reinstallare... come nel mio caso).
]zac[
 
E' semplicemente perche' un pacchetto prevede di sostiturne un altro (tipico 
caso di versione diverse dello stesso programma/librerie).
 
Se il pacchetto sostituito e' una dipendenza di un altri pacchetti viene 
richiesto di aggiornare anche quei pacchetti, e se quei pacchetti sono 
dipendenza di ... ecc. ...
 
 
Per evitare la catena e' necessario installare manualmente il pacchetto alla 
base delle dipendenze in modo da non rimuovere quello gia' esistente, cosa 
che di solito non crea problemi, ma e' relativamente facile che si 
verifichino effetti collaterali (facili da tenere a bada se si ha fatto 
varie volta la cosa, altrimenti la cosa e' piuttosto ardua).

 l'intero sistema (non ne capisco il perche`)
 
 
Ho detto che ho provato ad aggiornare l'intero sistema ma mi ha portato 
a problemi, per cui ho formattato e installato direttamente la testing.
 
Ma sono entrambi dei "workaround", non sempre applicabili.
 
Marco
 

 Ma sono entrambi dei "workaround", non sempre applicabili.
 
Questo dipende dal contesto. Nel mio caso, se mi serve qualcosa che non e` 
in Stable, faccio un dist-upgrade e amen
 
Enrico

 in Stable, faccio un dist-upgrade e amen
 
 
Certo, quello che intendevo dire è che dato il potenziale rischio di 
malfunzionamenti uno ci pensa due volte a farlo se ha già la macchina 
ben configurata con tutti i programmi installati e le proprie 
personalizzazioni (script e quant'altro). Soprattutto se l'upgrade è 
"necessario" solamente per avere un pacchetto non obsoleto.
 
Ciao!
Marco