В выводе «apt-cache зависит», что означает «Предлагает, Рекомендует, |, <>?»

20

Я проверил страницу man / info, но там нет ссылки на некоторые аспекты выходного файла apt-cache depends

Страница man / info постаралась быть полезной (тупо); цитата: «Для конкретного значения оставшейся части вывода лучше обратиться к исходному коду apt»

Теперь, если честно, на информационной странице эта цитата относилась к опции 'showpkg', которую она разумно объяснила, но у моего варианта такого объяснения не было ... Я понимаю, что информация о Linux поступает из многих источников (не только из man / info). страниц), и я не особо хочу рыться в источнике (хотя я иногда так и делаю), так что вот пример того, что я хотел бы узнать, значение.

# I can assume what these mean, but... 
#  What does | mean? (probably means 'or'???)
#  What does <pkg> and the following indentations  mean? 
#  At the end, the interaction(?) of Suggest and Recommends puzzles me.

$ apt-cache depends solr-common
solr-common    
  Depends: debconf
 |Depends: openjdk-6-jre-headless
 |Depends: <java5-runtime-headless>
    default-jre-headless
    gcj-4.4-jre-headless
    gcj-jre-headless
    gij-4.3
   openjdk-6-jre-headless
  Depends: <java6-runtime-headless>
    default-jre-headless
    openjdk-6-jre-headless
  Depends: libcommons-codec-java
  Depends: libcommons-csv-java
  Depends: libcommons-fileupload-java
  Depends: libcommons-httpclient-java
  Depends: libcommons-io-java
  Depends: libjaxp1.3-java
  Depends: libjetty-java
  Depends: liblucene2-java
  Depends: libservlet2.5-java
  Depends: libslf4j-java
  Depends: libxml-commons-external-java
  Suggests: libmysql-java
 |Recommends: solr-tomcat
  Recommends: solr-jetty
Peter.O
источник

Ответы:

15

Официальным справочником является руководство по политике Debian: http://www.debian.org/doc/debian-policy/

Цитирование руководства:

Поле Recommended должно содержать список пакетов, которые будут найдены вместе с этим во всех случаях, кроме необычных установок.

Предлагает: Это используется, чтобы объявить, что один пакет может быть более полезным с одним или несколькими другими. Использование этого поля сообщает системе упаковки и пользователю, что перечисленные пакеты относятся к этому и, возможно, могут повысить его полезность, но установка этого пакета без них вполне оправдана.

В наши дни рекомендуемые пакеты также устанавливаются по умолчанию (когда вы устанавливаете пакет, выполняя рекомендации).

Как вы уже догадались, | указывает «или». Линия управления обычно показывает foo | bar, но apt-cache полагается переформатировать его, показывая каждую альтернативу в отдельной строке и добавляя перед первым |. Другими словами, труба помечает предпочтительный вариант, а следующая строка - альтернативный.

Пакет, указанный в угловых скобках, указывает на то, что это виртуальный пакет. Пакеты, перечисленные в строках с отступом после него, являются различными пакетами, которые предоставляют эту услугу.

psusi
источник
Спасибо псуси. Это определенно поставило меня на правильный путь. Разница между «Рекомендует» и «Предлагает» все еще немного неопределенна для меня, но я уверен, что теперь я осознаю приблизительно то, что они имеют в виду, я постепенно «пойму» это знакомством с некоторыми примерами, где я уже чувствую, что и почему что-то предлагается или рекомендуется.
Peter.O
2
Recommended теперь установлены по умолчанию, а рекомендуемые - нет. Это основное отличие на практике. По сути, рекомендует разрешить вам «зависеть» от чего-либо, но разрешить пользователю по-прежнему удалять его, не удаляя ваши пакеты. Предлагает просто отображаться в некоторых интерфейсах как то, что вы также можете установить. Вариант использования - это что-то вроде file-roller(менеджер архива), предлагающее более экзотическую библиотеку сжатия, которую он мог бы использовать, если установлен, но большинство людей не хотят.
Andrewsomething
3
@ fred.bear хороший пример - музыкальная программа, подобная Audacity. Если вы хотите копировать компакт-диски, вам нужно установить cdparanoia. Если вы хотите кодировать / воспроизводить mp3-файлы, то вам нужно установить lame. Вы можете по-прежнему запускать Audacity без них, но большинство людей, которые запускают его, ожидают, что оно сможет копировать CD в MP3, поэтому эти пакеты следует рекомендовать. Он также может кодировать в FLAC, но это лучший выбор для подсказок, поскольку большинство людей не используют FLAC.
psusi
@andrewsomething и @psusi ... пару приятных выступлений ... спасибо
Питер.