Skip to main content
In genere, ogni volta che esegui bin/up, using-the-toolkit aggiorna automaticamente la nostra immagine TeX Live full. Per evitare aggiornamenti manuali, puoi automatizzare gli aggiornamenti della tua immagine TeX Live per la sandbox con lo script seguente. Aggiungilo come cron job, assicurandoti che l’utente di cron abbia il permesso di eseguire docker. Esegui crontab -e per aggiungere la seguente riga alla fine.
crontab -e
flock -n salta un’esecuzione finché quella precedente detiene ancora il lock, così un pull lento non provoca mai accumuli.
/usr/local/bin/pull-texlive.sh
Perché una rotazione oraria invece di scaricare tutto in una volta: il tag è ricavato dall’orologio di sistema (ore trascorse dall’epoch, modulo il numero di tag), quindi il job è privo di stato: nulla registra “dove eravamo rimasti” e il ciclo si riallinea da solo dopo un riavvio o un’ora saltata. Ogni esecuzione riguarda un solo tag; quando il digest nel registry non è cambiato, il pull si limita a un controllo del manifest (Image is up to date) e termina in pochi secondi. Un aggiornamento reale scarica al massimo un’immagine all’ora, con un limite imposto da timeout 50m, e docker image prune -f rimuove i layer rimasti orfani dopo lo spostamento del tag. Per verificare che la sincronizzazione funzioni correttamente:
Quando viene pubblicata una nuova release di TeX Live, aggiungi il suo tag all’array TAGS: la durata della rotazione si adatta automaticamente. Le ore in cui l’host è spento vengono saltate, non accodate; i tag interessati verranno semplicemente aggiornati al turno successivo.
Ultima modifica il 4 ottobre 2026