lsb_release - não foi possível converter a string em float: '8.04 LTS'

0

Tudo o que depende do comando lsb_release não está funcionando no meu computador.

exemplo:

pip install numpy

raise subprocess.CalledProcessError(code, cmd, stdout, stderr) subprocess.CalledProcessError: Command 'lsb_release -a' returned non-zero exit status 1

E, de fato, lsb_release -a gera um erro

File "/usr/bin/lsb_release", line 95, in <module>
    main()
  File "/usr/bin/lsb_release", line 59, in main
    distinfo = lsb_release.get_distro_information()
  File "/usr/lib/python3/dist-packages/lsb_release.py", line 383, in get_distro_information
    distinfo = guess_debian_release()
  File "/usr/lib/python3/dist-packages/lsb_release.py", line 281, in guess_debian_release
    get_distro_info(distinfo['ID'])
  File "/usr/lib/python3/dist-packages/lsb_release.py", line 41, in get_distro_info
    RELEASES_ORDER.sort(key=lambda n: float(n[0]))
  File "/usr/lib/python3/dist-packages/lsb_release.py", line 41, in <lambda>
    RELEASES_ORDER.sort(key=lambda n: float(n[0]))
ValueError: could not convert string to float: '8.04 LTS'

Eu sei que em python '8.04 LTS' não pode ser convertido em float , mas por que isso está acontecendo?

Eu tentei reinstalar o lsb_release e o python-pip , mas isso não resolve o problema.

Estou em Ubuntu 16.04 LTS . alguma ajuda?

    
por Ghilas BELHADJ 30.06.2017 / 23:54

1 resposta

1

Eu tive o mesmo erro em uma das minhas VMs, as outras 2 e o hipervisor estavam bem. Mesma versão (16.04.3), não é uma pista do que a causou. É um bug conhecido.

Tenho algum alívio aqui

Modifique o arquivo /usr/share/pyshared/lsb_release.py line 41 de:

RELEASES_ORDER.sort(key=lambda n: float(n[0])) 

para:

RELEASES_ORDER.sort(key=lambda n: float(n[0].split()[0]))

Corrigido o problema para mim. Crédito completo para SHIINA Hideaki (shiina) na barra de lançamento do bug do Ubuntu. Estou apenas repostando aqui.

    
por Ernesto Barechesto 07.09.2017 / 00:52