Perintah berikut berfungsi dengan baik di Ubuntu 15.10:
sudo apt-get build-dep emacs24
Namun, pada Ubuntu 16.04 saya mendapatkan kesalahan berikut saat menjalankannya:
Reading package lists... Done
E: You must put some 'source' URIs in your sources.list
Di 15.10 semua baris (sekitar 10 dalam jumlah) dengan deb-src
di /etc/apt/sources.list
mana uncommented, sedangkan di 16,04 baris yang sesuai di mana berkomentar. Sebagai contoh, berikut adalah 4 baris dari saya saat ini 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
Apa alasan dari perubahan ini?
Selanjutnya, saya ingin menghindari pengeditan secara manual /etc/apt/sources.list
setiap kali saya menginstal ulang Ubuntu. Bagaimana ini (menghapus komentar deb-src
baris) dilakukan secara otomatis?
sed
skrip di sekitar.python3-software-properties
paket mungkin berguna untuk menulis script Python juga.Jawaban:
Buka Perangkat Lunak & Pembaruan dan aktifkan "Kode sumber".
sumber
Saya memiliki masalah yang sama pada instalasi server Ubuntu 16.04, jadi tidak ada GUI. Yang saya butuhkan hanyalah beberapa
sed
perintah.Lalu
sudo apt-get update
dan lanjutkan.sumber
Berikut adalah skrip Bash (yang saat ini belum diuji) yang dapat digunakan untuk menghapus komentar
deb-src
pada baris disources.list
:sumber
solusi sederhana yang melakukan apa yang diposting oleh orang lain dengan lebih ringkas:
Perbedaan utama: Perl memiliki opsi -i inplace yang memodifikasi file di tempatnya; Saya tidak menambahkan akhiran untuk file cadangan karena saya tidak ingin file cadangan secara tidak sengaja diperlakukan sebagai file data. Dan "*" berkaitan dengan spasi kosong opsional. "perl -p -n -e" sebagian besar sama dengan "sed -e", meskipun hati-hati untuk pencocokan regex serakah.
Ini memiliki batasan yang sama dengan yang lain: itu memungkinkan sumber bahkan jika sumber asli tidak diaktifkan (yaitu mitra), dan itu tidak bekerja di /etc/apt/sources.list.d. Berikut ini juga akan memproses /etc/apt/sources.list.d* tetapi membuat cadangan terlebih dahulu.
sumber