Erro "não foi possível encontrar um modelo de distribuição" do Apt

15

Quando tento instalar qualquer coisa usando o apt-get, recebo o seguinte erro:

Traceback (most recent call last):
  File "/usr/bin/add-apt-repository", line 60, in <module>
    sp = SoftwareProperties()   
  File "/usr/lib/python2.6/dist-packages/softwareproperties/SoftwareProperties.py", line 90, in __init__
    self.reload_sourceslist()
  File "/usr/lib/python2.6/dist-packages/softwareproperties/SoftwareProperties.py", line 538, in reload_sourceslist
    self.distro.get_sources(self.sourceslist)    
  File "/usr/lib/python2.6/dist-packages/aptsources/distro.py", line 90, in get_sources
    raise NoDistroTemplateException("Error: could not find a "
aptsources.distro.NoDistroTemplateException: Error: could not find a distribution template

Alguma idéia do que isso significa e como resolvê-lo?

Ryan L. Watson
fonte
Você pode mostrar o comando exato dando esta resposta?
enzotib
Tente usar aptitude.
amra

Respostas:

23

Fácil de corrigir Basta fazer isso

gksudo gedit /etc/lsb-release

Em seguida, edite o arquivo que é aberto para que fique assim

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=10.04
DISTRIB_CODENAME=karmic
DISTRIB_DESCRIPTION="Ubuntu Karmic Koala"

Lembre-se de inserir qual versão do ubuntu você está usando. Estou usando o koala cármico, então coloquei isso.

Você pode obter uma lista aqui na parte inferior
http://en.wikipedia.org/wiki/Ubuntu_%28operating_system%29

Em seguida, volte ao terminal depois de salvar o arquivo lsb-release e você poderá adicionar o apt-repository

Joshua Robison
fonte
Apenas uma observação: tenha cuidado com as letras maiúsculas e minúsculas!
4
Você definitivamente não deve fazer isso. Esse arquivo faz parte do pacote de arquivos base e não deve ser editado. Em vez disso, você deve fazer o downgrade ou atualizar o pacote adequadamente (e fixar o outro pacote que acionou a alteração dos arquivos base).
Tamás Szelei 29/07/2012
Parece ótimo @fish, lembre-se de escrever uma explicação passo a passo fácil de como fazer isso e publicá-la aqui como resposta?
Joshua Robison
Aqui está uma grande resposta que abrange praticamente todos os passos: askubuntu.com/a/135472/3449
Tamás Szelei
5

O conteúdo de /etc/lsb-releaseé inválido. Você precisará reinstalar o base-filespacote para restaurar o conteúdo pretendido. Infelizmente você não pode usar apenas apt-getpara o trabalho. Em vez de,

  1. vá para https://launchpad.net/ubuntu/+source/base-files e procure a seção para sua versão do Ubuntu,

  2. faça o download da versão mais recente do pacote disponível para seu lançamento e arquitetura,

  3. corre:

    sudo dpkg -i /your/path/to/base-files_*.deb
    
  4. Faça um teste com

    sudo apt-get install --reinstall base-files
    
David Foerster
fonte