Можно ли добавить репозиторий ppa в /etc/apt/source.list?

С помощью sudo add-apt-repository '<deb url codename component>' репозиторий добавляется в файл /etc/apt/source.list.

sudo add-apt-repository ppa:<user>/<ppa-name> , я увидел, что все репозитории ppa добавлены в файл /etc/apt/source.list.d:

 $ 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. Может ли репозиторий ppa быть добавлен в конец файла /etc/apt/source.list?

  2. Почему репозитории ppa обрабатываются иначе, чем не-ppa?

  3. Существуют ли другие репозитории, не относящиеся к ppa, так же, как и ppa?

  4. Будет ли sudo add-apt-repository '<deb url codename component>' добавить репозиторий ppa в /etc/apt/source.list или в некоторые файлы в файле /etc/apt/source.list.d?

  1. Да, PPA можно добавить в /etc/apt/source.list , аналогично репозиториям 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 

    Пример для WineHq: Ссылка на репозиторий ppa debian

  2. Мысль просто заключалась в том, чтобы держать вещи как-то легко управляемыми, оставляя /etc/apt/source.list только для официальных релизов-репозиториев. Все дополнительные репозитории отправляются в /etc/apt/source.list.d/ . Легко:

    1. add (создание файла, а затем редактирование существующего, частичное решение, чтобы избежать дубликатов)
    2. remove (с разбором /etc/apt/source.list ищет связанную строку)
    3. резервное копирование / восстановление (с использованием сжатого архива папки /etc/apt/source.list.d/ )
    4. избегайте ломать вещи с большим количеством изменений, нацеленных на /etc/apt/source.list
  3. PPA всегда добавляются в папку /etc/apt/source.list.d/ если она написана в форме ppa:<user>/<ppa-name> .

    Ссылка: 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. Ну, похоже, только PPA, как ярлык, переходит в /etc/apt/sources.list.d/ . add-apt-repository или apt-add-repository – это специальный инструмент Ubuntu. Все, что я могу придумать, – это просто решение Ubuntu оставить личные PPA.

    Однако вы можете изменить его, чтобы использовать только /etc/apt/sources.list . Это скрипт python3. Изменить строку /usr/bin/add-apt-repository :

     shortcut = shortcut_handler(line) 

    замените его ниже, чтобы разрешить форму быстрого доступа ppa к форме строки deb:

     shortcut = shortcut_handler(shortcut_handler(line).expand(sp.distro.codename)[0])