Bisakah repositori ppa ditambahkan ke /etc/apt/source.list?

12

Oleh sudo add-apt-repository '<deb url codename component>', repositori ditambahkan ke file /etc/apt/source.list.

Oleh sudo add-apt-repository ppa:<user>/<ppa-name>, saya melihat bahwa semua repositori ppa ditambahkan ke /etc/apt/source.list.d dir:

$ ls /etc/apt/sources.list.d/
ferramroberto-sopcast-precise.list
ferramroberto-sopcast-precise.list.save
google-talkplugin.list
google-talkplugin.list.save
kalakris-okular-precise.list
kalakris-okular-precise.list.save
linrunner-thinkpad-extras-precise.list
linrunner-thinkpad-extras-precise.list.save
precise-partner.list
precise-partner.list.save
staticfloat-julia-deps-precise.list
staticfloat-juliareleases-precise.list
staticfloat-juliareleases-precise.list.save
telepathy-ppa-precise.list
telepathy-ppa-precise.list.save
ubuntu-wine-ppa-precise.list
ubuntu-wine-ppa-precise.list.save
venerix-blug-precise.list
venerix-blug-precise.list.save
  1. Bisakah repositori ppa ditambahkan ke akhir file /etc/apt/source.list?

  2. Mengapa repositori ppa diperlakukan berbeda dari yang non-ppa?

  3. Apakah ada repositori non-ppa lainnya diperlakukan sama seperti yang ppa?

  4. Akan sudo add-apt-repository '<deb url codename component>'menambahkan repositori ppa ke /etc/apt/source.list, atau ke beberapa file di bawah /etc/apt/source.list.d?

Tim
sumber

Jawaban:

11
  1. Ya, PPA dapat ditambahkan ke /etc/apt/source.list, dengan cara yang mirip dengan repositori debian (deb).

    deb http://ppa.launchpad.net/<ppa-name>/ppa/ubuntu <release-code-name> main 
    deb-src http://ppa.launchpad.net/<ppa-name>/ppa/ubuntu <release-code-name> main
    

    Contoh untuk WineHq: tautan repositori ppa debian

  2. Pikir hanya masalah menjaga segala sesuatu dengan mudah dikelola, /etc/apt/source.listhanya menyisakan repositori rilis resmi. Semua repositori tambahan masuk ke /etc/apt/source.list.d/. Mudah untuk:

    1. tambah (membuat file kemudian mengedit yang sudah ada, solusi parsial untuk menghindari duplikat juga)
    2. hapus (dengan parsing garis yang /etc/apt/source.listmencari terkait)
    3. backup / restore (menggunakan arsip /etc/apt/source.list.d/folder terkompresi )
    4. menghindari hal-hal dengan penargetan suntingan banyak /etc/apt/source.list
  3. PPA selalu ditambahkan ke /etc/apt/source.list.d/folder jika ditulis dalam ppa:<user>/<ppa-name>bentuk.

    Referensi: man add-apt-repository

    REPOSITORY STRING
           REPOSITORY can  be  either  a  line  that  can  be  added  directly  to
           sources.list(5),  in the form ppa:<user>/<ppa-name> for adding Personal
           Package Archives, or a distribution component to enable.
    
           In  the   first   form,   REPOSITORY   will   just   be   appended   to
           /etc/apt/sources.list.
    
           In  the second form, ppa:<user>/<ppa-name> will be expanded to the full
           deb  line  of  the  PPA  and   added   into   a   new   file   in   the
           /etc/apt/sources.list.d/  directory.   The  GPG public key of the newly
           added PPA will also be downloaded and added to apt's keyring.
    
           In the third form, the given distribution component will be enabled for
           all sources.
    
  4. Yah, sepertinya hanya PPA sebagai jalan pintas /etc/apt/sources.list.d/. add-apt-repositoryatau apt-add-repositoryalat khusus Ubuntu. Yang bisa saya pikirkan hanyalah keputusan Ubuntu untuk mengeluarkan PPA pribadi.

    Namun Anda dapat memodifikasinya hanya untuk digunakan /etc/apt/sources.list. Ini adalah skrip python3. Ubah /usr/bin/add-apt-repositorybaris:

    shortcut = shortcut_handler(line)
    

    ganti dengan yang di bawah ini untuk menyelesaikan formulir pintas ppa ke formulir baris deb:

    shortcut = shortcut_handler(shortcut_handler(line).expand(sp.distro.codename)[0])
    
user.dz
sumber
Perhatikan bahwa, anehnya, repo non-PPA akan ditambahkan /etc/apt/sources.list.
saiarcot895
1
@ saiarcot895, saya pikir add-apt-repositoryditulis untuk memudahkan pekerjaan dengan PPA di tempat pertama. Di sini deskripsi komit ketika ditambahkan: " skrip pembantu baru" add-apt-repository "yang dapat digunakan untuk mengaktifkan repositori dari commandline. Berguna untuk eg'add-apt-repositori ppa: gnome-desktop ' ". bazaar.launchpad.net/~ubuntu-core-dev/software-properties/main/…
user.dz