Discussione:Repository & pinning: differenze tra le versioni

m
 
(19 versioni intermedie di 3 utenti non mostrate)
Riga 51: Riga 51:
:: Non ricordo a che stavo pensando ma ipotizzo che specificare la release di default serva a installare il pacchetto di testing ''e anche'' le dipendenze, mentre per un pacchetto senza dipendenze i due metodi sono equivalenti. Ipotizzo :)<br/>Altrimenti bisognerebbe indicare una configurazione di pinning che, automaticamente, installa il pacchetto e tutte le sue dipendenze. Ma esiste? [[Utente:S3v|S3v]] 09:51, 21 mar 2015 (CET)
:: Non ricordo a che stavo pensando ma ipotizzo che specificare la release di default serva a installare il pacchetto di testing ''e anche'' le dipendenze, mentre per un pacchetto senza dipendenze i due metodi sono equivalenti. Ipotizzo :)<br/>Altrimenti bisognerebbe indicare una configurazione di pinning che, automaticamente, installa il pacchetto e tutte le sue dipendenze. Ma esiste? [[Utente:S3v|S3v]] 09:51, 21 mar 2015 (CET)


::: Io credo che le dipendenze se le risolva autonomamente aptitude come al solito. [[Utente:Wtf|Wtf]] 21:20, 5 mag 2015 (CEST)
::: Io credo che le dipendenze se le risolva autonomamente aptitude come al solito. Se ci sono conflitti non esiste configurazione che tenga. [[Utente:Wtf|Wtf]] 21:20, 5 mag 2015 (CEST)


== Proposte cambiamento ==
== Proposte cambiamento ==
Riga 94: Riga 94:
: Il repository deb-multimedia server ancora, anche se molto meno che in passato. Per esempio il pacchetto monkeys-audio c'è solo nel repository deb-multimedia
: Il repository deb-multimedia server ancora, anche se molto meno che in passato. Per esempio il pacchetto monkeys-audio c'è solo nel repository deb-multimedia
:: [[Utente:Wtf|Wtf]] 21:27, 5 mag 2015 (CEST)
:: [[Utente:Wtf|Wtf]] 21:27, 5 mag 2015 (CEST)
:: Creando un file in /etc/apt/conf.d/ con la sola configurazione necessaria per il pinning, senza tutte le altre opzioni (Autoremove e quant'altro) la configurazione sarebbe completa, ma senza modificare il comportamento di default di APT e poi per ripristinare tutto basterebbe cancellare il file del pinning con la Default-Release.
:: Per multimedia allora lo terrei, ma se possibile in un unico esempio, anziché in due.
:: Altra cosa: ti va bene rimuovere tutti i repository, per non doverli aggiornare a ogni passaggio di versione? (non esiste stable-backports, ma solo jessie-backports per esempio). [[Utente:HAL 9000|HAL 9000]] 21:51, 5 mag 2015 (CEST)
:: Mi sta bene, ma manterrei anche i sources.list sempre per il motivo di avere degli esempi completi. Se volete eliminare l'ultimo esempio "Mix di varie release" fate pure, io l'avevo mantenuto solo per scrupolo, visto che non l'avevo scritto io. [[Utente:Wtf|Wtf]] 21:54, 5 mag 2015 (CEST)
::: Va bene, direi allora di aggiungere nuovamente i sources.list per tutti gli esempi, in fondo la comodità di chi ci legge viene prima della nostra. :)
::: E concordo con il rimuovere l'ultimo esempio. Prima di apportare le modifiche però, aggiornerei anche la discussione del forum e aspetterei un po', nel caso volesse intervenire qualcuno, anche per riflettere i cambiamenti emersi in quest'altra. [[Utente:HAL 9000|HAL 9000]] 22:10, 5 mag 2015 (CEST)
::: Qual'è la discussione sul forum (doh!)? [[Utente:Wtf|Wtf]] 00:02, 6 mag 2015 (CEST)
:::: Mio errore, avevo solo continuato [http://forum.debianizzati.org/viewtopic.php?f=25&t=48541&start=15#p192419 una discussione precedente]. Ho rimosso da lì intanto i punti cambiati nel corso di questa discussione. :)  [[Utente:HAL 9000|HAL 9000]] 08:52, 6 mag 2015 (CEST)
: A proposito del primo esempio "Stable con testing", non sono sicuro che dichiarare a -1 il pinning di tutti i pacchetti di testing serva a qualcosa. Io mi aspetterei che tale dichiarazione venga semplicemente ignorata da APT nel momento in cui si calcola dipendenze per il pacchetto specificato di testing. Tu hai verificato il contrario? [[Utente:Wtf|Wtf]] 21:59, 5 mag 2015 (CEST)
: Ok, stupido io. La dichiarazione l'hai messa per evitare che quando uno lancia upgrade tutto il sistema passi a testing. [[Utente:Wtf|Wtf]] 22:02, 5 mag 2015 (CEST)
: Espliciterei però meglio la seconda parte del warning. Se il pacchetto specificato è uno solo il rischio che paventi è davvero remoto a mio parere. Diversamente sarebbe se uno installasse molti pacchetti da testing. [[Utente:Wtf|Wtf]] 22:04, 5 mag 2015 (CEST)
:: Ho fatto una prova veloce con amule (che non si trova in Jessie, ma solo in Sid). Confermo che se le dipendenze sono bloccate con pinning a -1, allora lo è anche il pacchetto, nonostante un pinning di 990. A ogni modo aptitude ha un meccanismo di risoluzione dei conflitti automatici, quindi può proporre come soluzione quello di ignorare il pinning (a me l'ha fatto come seconda soluzione dopo quella di non installare il pacchetto, proponendomi di installare le dipendenze da Sid). Lo stesso non avviene invece con apt e apt-get, che si limitano a uscire. [[Utente:HAL 9000|HAL 9000]] 22:10, 5 mag 2015 (CEST)
:: Questo mi è sembrato strano perché quando scrissi quella configurazione aveva funzionato tutto correttamente. Ho anch'io fatto una prova con "amule" e (simulazione "-s") il pacchetto viene normalmente installato con alcune dipendenze prese da sid mentre altre sono prese da stretch (su cui mi trovo). Quindi non ho interpretato bene ciò che hai scritto: a te il pacchetto non si installa? [[Utente:S3v|S3v]] 00:35, 6 mag 2015 (CEST) (EDIT) Dimenticavo che quella configurazione valeva per "un solo pacchetto" :D Con le dipendenze confermo che il "-1" va tolto.


== Dipendenze ==
== Dipendenze ==
Riga 103: Riga 124:
: Lo sospettavo. Direi di specificare abbastanza chiaramente che le dipendenze non vengono gestite automaticamente da APT in caso di pinning (o almeno si ha una gestione semi-automatica) e che la loro risoluzione presuppone un coinvolgimento non passivo dell'utente. [[Utente:S3v|S3v]] 19:54, 5 mag 2015 (CEST)
: Lo sospettavo. Direi di specificare abbastanza chiaramente che le dipendenze non vengono gestite automaticamente da APT in caso di pinning (o almeno si ha una gestione semi-automatica) e che la loro risoluzione presuppone un coinvolgimento non passivo dell'utente. [[Utente:S3v|S3v]] 19:54, 5 mag 2015 (CEST)


: Non avevo capito inizialmente le vostre osservazioni. Concordo anche io che il pinning non si estende alle dipendenze e altresì concordo nell'affermare che sia meglio scrivere questa cosa esplicitamente (io la davo per scontata ad esempio). [[Utente:Wtf|Wtf]] 21:32, 5 mag 2015 (CEST)
: Non avevo capito inizialmente le vostre osservazioni. Concordo anche io che il pinning non si estende alle dipendenze e altresì concordo nell'affermare che sia meglio scrivere questa cosa esplicitamente (io la davo per scontata ad esempio). Io però specificherei anche che le dipendenze vengono risolte automaticamente e che quindi non è necessario esplicitarle autonomamente. L'unico caso in cui si possono avere problemi è quello in cui ci siano dei conflitti con le dipendenze, ad esempio due pacchetti dipendono da uno stesso medesimo pacchetto, ma di differente versione. In tal caso però anche specificare manualmente tutte le dipendenze non risolve nulla. [[Utente:Wtf|Wtf]] 21:32, 5 mag 2015 (CEST)
 
:: Giusta osservazione, sennò si rischia di creare un altro fraintendimento (sulla necessità di specificare le dipendenze). :) [[Utente:HAL 9000|HAL 9000]] 21:49, 5 mag 2015 (CEST)
 
== Sommario di tutte le modifiche apportate ==
 
Lascio un link alla discussione del forum, in particolare alla parte da [http://forum.debianizzati.org/viewtopic.php?f=25&t=48541&start=30#p193316 questo mio messaggio] in poi, che spiega l'origine degli ultimi cambiamenti.
 
Sommario delle modifiche più importanti apportate, anche in precedenza:
* utilizzare apt.conf e preferences per evitare confusione, specialmente in caso di presenza di altri file di configurazione, lasciando le directory apt.conf.d e preferences.d per eventuale software di sistema;
* non usare mai apt.conf e preferences assieme, per via dei possibili conflitti tra i due (e non parliamo neanche del fatto che con l'uso dell'opzione -t si possono disabilitare in una volta sola entrambe le impostazioni, in alcuni casi specifici). Se basta Default-Release in apt.conf si usa quello, altrimenti lo si lascia vuoto e si passa a preferences;
* evitare opzioni potenzialmente pericolose in apt.conf (Fix-Missing, Force-LoopBreak), che possono causare perdita di dati installati e le configurazioni (Purge, Purge-Unused; in particolare per DB credo), meno sicure (AllowUnauthenticated), inutili (Cache-Limit; ora illimitato di default) e comunque non attinenti al pinning (AutomaticRemove, Clean-Installed). Apt.conf necessita, eventualmente, soltanto della riga "APT::Default-Release";
* uso di codename (jessie, stretch) al posto di suite/archive (stable, testing) per stable+testing per sources.list, apt.conf e preferences, in modo che la configurazione non cambi quando Stretch diverrà la nuova stable;
* uso di suite (testing) solo quando non si hanno repository di stable;
* i file Release di backports ed experimental sono stati aggiornati per impedire installazioni automatiche (e in caso di experimental anche aggiornamenti automatici) dei pacchetti già presenti in altri rami;
* non consigliare di conseguenza alcun pinning per i backports, per via dell'impossibilità di "garantirli", salvo intervento di aptitude (facendo particolare attenzione alle soluzioni proposte, che non mi sento però di consigliare a chi non è esperto) o assegnare la stessa priorità a tutto il repository backports, che è sconsigliato dai Debian Developer; basta in fondo utilizzare l'opzione -t e poi tutto si aggiornerà automaticamente (in particolare utilizzando <code>apt upgrade</code>, che è consigliabile a partire da Jessie, oppure <code>apt-get dist-upgrade</code>);
* consigliare pinning a una selezione di pacchetti invece di tutta una release, soltanto se poi è possibile fare a meno dell'intervento manuale (con opzione -t), altrimenti accontentarsi di definire una Pin-Priority a tutto il repository che lo renda simile ai backports (per esempio un valore qualsiasi tale che: 100 <= Pin-Priority < 500). Questo è necessario per non disabilitare gli aggiornamenti automatici;
* divisione di tutti gli esempi in due sezioni, una dove è '''sconsigliato''' il pinning e l'altra dove invece è necessario per impedire il passaggio di versione alla più recente (anche se le soluzioni miste restano sconsigliate), in modo da facilitarne la ricerca (spero).
 
[[Utente:HAL 9000|HAL 9000]] 13:36, 11 mag 2015 (CEST)
3 581

contributi