Ecco cosa ho trovato:
platform.linux_distribution
Tenta di determinare il nome della distribuzione del sistema operativo Linux.
Dice platform.dist
è deprecato dalla 2.6, devi usare platform.linux_distribution
in Python 2 (ma è anche deprecato in Python 3.5).
Il motivo per cui platform.linux_distribution
non identifica alcune distribuzioni è il modo non standardizzato in cui le distribuzioni forniscono informazioni relative alla versione su se stesse.
Ho scritto un pacchetto chiamato distro
(ora utilizzato da pip
) che mira a sostituire distro.linux_distribution
. Funziona su molte distribuzioni che potrebbero restituire tuple strane o vuote quando si usa platform
.
https://github.com/nir0s/distro (distro
, su pypi)
Fornisce un'API molto più elaborata per recuperare le informazioni relative alla distribuzione.
$ python
Python 2.7.12 (default, Nov 7 2016, 11:55:55)
[GCC 6.2.1 20160830] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import distro
>>> distro.linux_distribution()
(u'Antergos Linux', '', u'ARCHCODE')
A proposito, platform.linux_distribution
deve essere rimosso in Python 3.7.