[RISOLTO] Aggiornare in stable un pacchetto da testing

Repository Ufficiali e non, come utilizzarli e come risolvere i problemi legati al loro utilizzo
Rispondi
brunoS
Newbie
Newbie
Messaggi: 45
Iscritto il: 29/08/2018, 6:40

[RISOLTO] Aggiornare in stable un pacchetto da testing

Messaggio da brunoS »

Vedo che https://packages.debian.org/bullseye/tex/texlive contiene la versione 2020 di texlive e ne ho bisogno per compilare un sorgente Tikz non mio, scritto con quella versione. La mia versione è 2018 e non sempre accetta la stessa sintassi della 2020, ma per me è l'unica accessibile con la stable (buster). Ho fatto varie prove:
- ho editato source.list aggiungendo

Codice: Seleziona tutto

deb http://deb.debian.org/debian/ buster-backports main contrib non-free
deb-src http://deb.debian.org/debian/ buster-backports main contrib non-free
Ho comandato

Codice: Seleziona tutto

apt-get update
e

Codice: Seleziona tutto

 apt-get upgrade
che sono stati eseguiti senza problemi, aggiornando un solo pacchetto di sicurezza da buster/updates/main, e il mio texlive-2018 risulta ancora la versione più recente disponibile.
Ho anche provato

Codice: Seleziona tutto

 # apt install -t buster-backports texlive
e questo è l'esito:

Codice: Seleziona tutto

Lettura elenco dei pacchetti... Fatto
Generazione albero delle dipendenze       
Lettura informazioni sullo stato... Fatto
texlive è già alla versione più recente (2018.20190227-2).
0 aggiornati, 0 installati, 0 da rimuovere e 126 non aggiornati.
Ho letto varie pagine di guide e di argomenti analoghi nel forum, forse c'è un dettaglio grande come una casa che non vedo: quale?
A questo punto ho modificato source.list per passare alla testing, ma ho dovuto rinunciare perché nell'eseguire l'upgrade alcuni pacchetti risultano bloccati.
Ultima modifica di brunoS il 17/12/2020, 23:11, modificato 1 volta in totale.
Aki
Global Moderator
Global Moderator
Messaggi: 9964
Iscritto il: 27/12/2007, 16:59

Re: Aggiornare in stable un pacchetto da testing

Messaggio da Aki »

brunoS ha scritto: 17/12/2020, 18:07Ho letto varie pagine di guide e di argomenti analoghi nel forum, forse c'è un dettaglio grande come una casa che non vedo: quale?
Queste le versioni disponibili di textlive in Debian:

Codice: Seleziona tutto

Package texlive
    jessie (oldoldstable) (tex): TeX Live: un'adeguata selezione dei pacchetti TeX Live
    2014.20141024-2+deb8u1: all
    stretch (oldstable) (tex): TeX Live: un'adeguata selezione dei pacchetti TeX Live
    2016.20170123-5: all
    buster (stable) (tex): TeX Live: un'adeguata selezione dei pacchetti TeX Live
    2018.20190227-2: all
    bullseye (testing) (tex): TeX Live: un'adeguata selezione dei pacchetti TeX Live
    2020.20200925-1: all
    sid (unstable) (tex): TeX Live: un'adeguata selezione dei pacchetti TeX Live
    2020.20201203-2: all
Come puoi vedere, in buster-backports (da cui stai cercando di installare), il pacchetto non è disponibile.
brunoS ha scritto: 17/12/2020, 18:07A questo punto ho modificato source.list per passare alla testing, ma ho dovuto rinunciare perché nell'eseguire l'upgrade alcuni pacchetti risultano bloccati
Per aggiornare da Debian Buster a Debian Testing (alias Debian Bullseye), puoi seguire le indicazioni (preliminari) delle note di rilascio consultabili all'indirizzo https://www.debian.org/releases/testing/amd64/release-notes/
brunoS
Newbie
Newbie
Messaggi: 45
Iscritto il: 29/08/2018, 6:40

Re: Aggiornare in stable un pacchetto da testing

Messaggio da brunoS »

Chiarissimo, grazie per la pronta risposta. Allora il dettaglio che non capisco è la funzione dei blackports: nel mio caso non servono a rendere disponibili anche per la buster dei pacchetti funzionanti sulla bullseye? O forse la modifica necessaria in source.list per i miei scopi sarebbe di indicare bullseye-backports anziché buster-backports?
Aki
Global Moderator
Global Moderator
Messaggi: 9964
Iscritto il: 27/12/2007, 16:59

Re: Aggiornare in stable un pacchetto da testing

Messaggio da Aki »

brunoS ha scritto: 17/12/2020, 19:43 Chiarissimo, grazie per la pronta risposta. Allora il dettaglio che non capisco è la funzione dei blackports: nel mio caso non servono a rendere disponibili anche per la buster dei pacchetti funzionanti sulla bullseye? O forse la modifica necessaria in source.list per i miei scopi sarebbe di indicare bullseye-backports anziché buster-backports?
Il repository buster-backports fornisce per Debian Stable solo alcuni dei pacchetti disponibili in Debian Testing (dopo che sono stati specificamente adattati e ricompilati per Debian Stable). Solo un limitato numero di pacchetti è disponibile in buster-backports e, di solito, non sono disponibili pacchetti complessi e con molte dipendenze (per la difficoltà di effettuare il backport di tutte le dipendenze). Inoltre, i pacchetti provenienti da backports sono meno testati, in senso generale, di quelli di Debian stable. Il repository backports non esiste per Debian testing in quanto da progetto i pacchetti già transitano da Debian unstable a Debian testing dopo che sono stati soddisfatti specifici criteri (tranne che durante i periodi “freeze” legati al rilascio di una nuova Debian stable). Per maggiori dettagli, vedi https://wiki.debian.org/it/Backports
brunoS
Newbie
Newbie
Messaggi: 45
Iscritto il: 29/08/2018, 6:40

Re: Aggiornare in stable un pacchetto da testing

Messaggio da brunoS »

Ti ringrazio, considero risolti i miei dubbi nel senso che mi è chiaro che non ho una soluzione facile e rapida al problema.
Aki
Global Moderator
Global Moderator
Messaggi: 9964
Iscritto il: 27/12/2007, 16:59

Re: Aggiornare in stable un pacchetto da testing

Messaggio da Aki »

brunoS ha scritto: 17/12/2020, 22:59 [..] non ho una soluzione facile e rapida al problema.
La soluzione che generalmente si adotta per installare in una release di Debian pacchetti di release successive è il “pinning” (trovi maggiori dettagli nelle guide del forum): è una tecnica che richiede una conoscenza preliminare di quello che si sta facendo e non sempre è applicabile (a causa di dipendenze non soddisfatte).

Personalmente, in questi casi, se possibile, preferisco effettuare il backport manuale semplificato dei pacchetti (se facilmente realizzabile, come in caso di pochissime o nessuna dipendenza). Questo richiede la ricompilazione e la ricreazione dei pacchetti Debian interessati: è necessario conoscere almeno i rudimenti della creazione dei pacchetti di programmi su Debian.

In alternativa si può installare la versione desiderata del programma specifico senza usare i pacchetti della release di Debian, facendo riferimento direttamente al sito dello sviluppatore del programma, ad esempio effettuando una installazione locale ad una specifica utenza ordinaria (ad esempio, https://www.tug.org/texlive/quickinstall.html): può essere necessario ricompilare il programma e quindi sono richieste conoscenze di base del linguaggio di programmazione usato per realizzare il programma.

Poiché, però, dall’ultima risposta inviata, stai cercando una soluzione “facile e rapida” (quindi, interpreto, senza eventuale impegno non del tutto prevedibile di tempo e di risorse mentali) , la soluzione più predicibile come risultati e meno impegnativa concettualmente è, con buona probabilità nel tuo caso, l’installazione di una macchina virtuale, ad esempio Virtualbox, con installato il minimo di Debian testing per usare la versione da te desiderata di texlive.

Ulteriore possibilità è creare un container in cui installare un minimo di Debian testing o Debian SID per usare la versione del pacchetto da te desiderato (per esempio, vedi https://wiki.debian.org/Packaging/Pre-Requisites riferito a sid).

Come vedi hai molte possibili soluzioni, scegli quella più adatta alle tue esigenze
brunoS
Newbie
Newbie
Messaggi: 45
Iscritto il: 29/08/2018, 6:40

Re: [RISOLTO] Aggiornare in stable un pacchetto da testing

Messaggio da brunoS »

Molto interessante, grazie.
Rispondi