¿Cómo puedo determinar mediante programación qué versiones de Ubuntu todavía son compatibles?

¿Cómo puedo determinar mediante programación qué versiones de Ubuntu todavía son compatibles?

Estaba escribiendo un script y necesitaba una lista de todas las versiones de Ubuntu actualmente compatibles.

Si alguno de ustedes conoce archivos descargables que contienen todas las versiones con fechas o una lista simple de todasactualmenteversiones compatibles. Eso seria genial. Obviamente tendrían que ser ubicaciones donde Canonical los mantenga actualizados para que los guiones sigan funcionando en el futuro.

Y debería ser algo que funcione en versiones anteriores de Ubuntu, digamos cualquier versión compatible (lucid+), etc.

Respuesta1

Puedes usar launchpadlib para hacer esto. Por ejemplo, en Python:

#!/usr/bin/env python

from launchpadlib.launchpad import Launchpad

lp = Launchpad.login_anonymously('series-support-check')
for series in lp.projects['ubuntu'].series:
    print series.name, series.supported

Para obtener más información sobre la API de Launchpad, consulte laAyuda de API de servicios webola referencia API.

Respuesta2

Puede utilizar el análisis de la salida de ubuntu-support-status. Esto enumerará qué software no es compatible y durante cuánto tiempo lo son los demás. Por ejemplo, los servicios LAMP tienen soporte durante 5 años en un escritorio LTS, incluso si el escritorio en sí solo tiene soporte durante tres años. Ese comando reflejará eso. También le mostrará que los paquetes del universo, multiverso, etc. no son compatibles en absoluto.

He aquí un ejemplo:

you@ubuntu:~$ ubuntu-support-status
Support status summary of 'ubuntu':

You have 1873 packages (89.5%) supported until October 2014 (18m)

You have 14 packages (0.7%) that can not/no-longer be downloaded
You have 206 packages (9.8%) that are unsupported

Run with --show-unsupported, --show-supported or --show-all to see more details

Respuesta3

Para colocar todos los nombres admitidos en una lista en lugar de imprimirlos:

from launchpadlib.launchpad import Launchpad

launchpad = Launchpad.login_anonymously('series-support-check')
names = [ s.name for s in launchpad.distributions["ubuntu"].series if s.active ]

Respuesta4

No es difícil ver el patrón en las fechas de lanzamiento. Si vas aWikipedia, puede ver que las versiones normales tienen soporte durante 1 año y medio, mientras que LTS (soporte a largo plazo, lanzado en abril de cada dos años) tiene soporte durante 3 años. Como hay un lanzamiento cada 6 meses (en abril y octubre), es fácil crear un script a partir de esa información.

información relacionada