Como atualizar automaticamente o /etc/apt/sources.list com fontes de URIs no Ubuntu 16.04?

8

O seguinte comando funcionou bem no Ubuntu 15.10:

sudo apt-get build-dep emacs24

No entanto, no Ubuntu 16.04, recebo o seguinte erro ao executá-lo:

Reading package lists... Done
E: You must put some 'source' URIs in your sources.list

Em 15.10 todas as linhas (cerca de 10 em número) com deb-src em /etc/apt/sources.list onde não comentadas, enquanto em 16.04 as linhas correspondentes foram comentadas. Por exemplo, aqui estão 4 linhas do meu atual sources.list :

## Major bug fix updates produced after the final release of the
## distribution.
deb http://no.archive.ubuntu.com/ubuntu/ xenial-updates main restricted
# deb-src http://no.archive.ubuntu.com/ubuntu/ xenial-updates main restricted

Qual é o motivo dessa mudança?

Em seguida, gostaria de evitar editar manualmente o /etc/apt/sources.list sempre que eu fizer uma reinstalação do Ubuntu. Como isso pode (descomentar as deb-src linhas) ser feito automaticamente?

    
por Håkon Hægland 23.04.2016 / 19:11

3 respostas

10

Abra Software e amp; Atualizações e habilitar "Código-fonte".

    
por Gunnar Hjalmarsson 23.04.2016 / 21:27
9

Eu tive esse mesmo problema em uma instalação de servidor do Ubuntu 16.04, então não há GUI. Tudo o que eu precisava era de alguns comandos sed .

sudo sed -i -- 's/#deb-src/deb-src/g' /etc/apt/sources.list && sudo sed -i -- 's/# deb-src/deb-src/g' /etc/apt/sources.list

Então sudo apt-get update e continue.

    
por Tobi 31.08.2016 / 22:39
2

Aqui está um script Bash (atualmente não testado) que pode ser usado para remover o comentário de deb-src linhas em sources.list :

tempdir=$(mktemp -d)
cd "$tempdir"
source_file=/etc/apt/sources.list
new_file=sources.list.new
perl -pE 's/^#\s+(deb-src)//' "$source_file" > "$new_file"
sudo cp "$new_file" "$source_file"
sudo apt-get update
    
por Håkon Hægland 23.04.2016 / 19:54

Tags