Bagaimana saya bisa secara sistematis menentukan Versi Ubuntu mana yang masih didukung?

11

Saya sedang menulis naskah dan membutuhkan daftar semua versi Ubuntu yang saat ini didukung.

Jika ada di antara kalian yang tahu file yang dapat diunduh yang berisi semua versi dengan tanggal atau daftar sederhana dari semua versi yang didukung saat ini . Itu akan bagus. Jelas mereka harus menjadi lokasi di mana Canonical membuat mereka tetap up to date sehingga skrip terus bekerja ke masa depan.

Dan itu harus menjadi sesuatu yang berfungsi pada versi Ubuntu yang lebih lama, katakanlah versi yang didukung (jelas +) dll.

Martin Owens -doctormo-
sumber

Jawaban:

11

Anda dapat menggunakan launchpadlib untuk melakukan ini. Misalnya, dengan 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

Untuk info lebih lanjut tentang API launchpad, lihat bantuan API layanan web atau referensi API .

Jeremy Kerr
sumber
Selain itu, untuk situasi di mana Anda memerlukan informasi ini secara offline, ada paket distro-info . (Dalam jernih, perintah distro-info ada dalam paket ubuntu-dev-tools .
tumbleweed
7

Anda dapat menggunakan parse output dari ubuntu-support-status. Itu akan mencantumkan perangkat lunak apa yang tidak didukung, dan berapa lama yang lainnya didukung. Misalnya, layanan LAMP didukung selama 5 tahun pada desktop LTS bahkan jika desktop itu sendiri hanya didukung selama tiga tahun. Perintah itu akan mencerminkan hal itu. Ini juga akan menunjukkan kepada Anda bahwa paket dari jagat raya, multiverse, dll, tidak didukung sama sekali.

Ini sebuah contoh:

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
Jo-Erlend Schinstad
sumber
3

Untuk menempatkan semua nama yang didukung dalam daftar alih-alih mencetaknya:

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 ]
Arand
sumber
Saya bukan ahli Python, tetapi apakah ini menambahkan sesuatu yang signifikan atas jawaban Jeremy?
Cesium
filter diikuti oleh peta? Kedengarannya seperti pemahaman daftar akan lebih baik: names = [ s.name for s in series_all if s.supported ]:)
Jeremy Kerr
Yah, itu menyimpan nama-nama dalam var daripada mencetaknya, pikir itu layak disebutkan karena aku menggaruk kepalaku sendiri sebentar :) Ya, versi JK terlihat sedikit lebih ramping :)
arand
-2

Tidak sulit untuk melihat pola dalam tanggal rilis. Jika Anda pergi ke Wikipedia , Anda dapat melihat bahwa rilis normal didukung selama 1 1/2 tahun, sedangkan LTS (Dukungan Jangka Panjang, dirilis pada bulan April setiap tahun lainnya) didukung selama 3 tahun. Karena ada rilis setiap 6 bulan (pada bulan April dan Oktober), mudah untuk membuat skrip dari informasi itu.

Thomas
sumber
3
Tidak. Ubuntu adalah satu sistem operasi, tetapi paket yang berbeda didukung untuk berbagai jangka waktu. Paket-paket yang digunakan di Server Ubuntu didukung untuk periode waktu yang lebih lama bahkan jika Anda menginstalnya di Desktop Ubuntu. Itu artinya Anda harus tahu bahwa Python didukung selama 5 tahun di desktop, misalnya. Ini tidak mudah ditemukan dengan membaca wikipedia. -1
Jo-Erlend Schinstad
Juga, mulai dari Ubuntu 13.04 semua rilis non-LTS sekarang hanya memiliki dukungan 9 bulan, bukan 18. Informasi apa pun berdasarkan status saat ini tidak terbukti di masa depan
MestreLion