Na saída 'apt-cache depende', qual é o significado de Sugere, Recomenda, |, <>?

20

Verifiquei a página man / info, mas não há referência a alguns aspectos do formato de saída de apt-cache depends

A página man / info tentou ser útil (de maneira obtusa); citação: "Para o significado específico do restante da saída, é melhor consultar o código-fonte apt"

Agora, para ser justo com a página de informações, essa citação dizia respeito à opção 'showpkg', que havia explicado razoavelmente, mas minha opção não tinha essa explicação ... Entendo que as informações do Linux vêm de várias fontes (não apenas man / info páginas), e eu particularmente não quero vasculhar a fonte (embora algumas vezes o faça), então aqui está um exemplo do que eu gostaria de saber o significado.

# 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
fonte

Respostas:

15

A referência autorizada é o manual de políticas da Debian: http://www.debian.org/doc/debian-policy/

Citando o manual:

O campo Recomendações deve listar os pacotes que seriam encontrados junto com este em todas as instalações, exceto as incomuns.

Sugere: É usado para declarar que um pacote pode ser mais útil com um ou mais outros. O uso desse campo informa ao sistema de empacotamento e ao usuário que os pacotes listados estão relacionados a este e podem talvez melhorar sua utilidade, mas que a instalação deste sem eles é perfeitamente razoável.

Atualmente, os pacotes recomendados também são instalados por padrão (quando você instala o pacote fazendo a recomendação).

Como você adivinhou o | indica "ou". A linha de controle normalmente mostra foo | barra, mas o apt-cache depende parece reformatá-lo, mostrando cada alternativa em sua própria linha e prefixando a primeira com o |. Em outras palavras, o canal sinaliza a opção preferida e a próxima linha é a alternativa.

O pacote listado entre colchetes angulares indica que é um pacote virtual. Os pacotes listados nas linhas recuadas depois dele são os vários pacotes que fornecem esse serviço.

psusi
fonte
Obrigado psusi. Isso certamente me colocou no caminho certo. A diferença entre Recomenda e Sugere ainda é um pouco vaga para mim, mas tenho certeza de que agora que estou ciente do que eles significam, vou gradualmente entendê-lo. pela exposição a alguns exemplos em que eu já sinto o que e por que algo está sendo sugerido ou recomendado.
precisa saber é o seguinte
2
As recomendações agora estão instaladas por padrão e as sugestões não. Essa é a principal diferença na prática. Essencialmente, as recomendações permitem que você "dependa" de algo, mas permitem que o usuário ainda o desinstale sem desinstalar seus pacotes. As sugestões simplesmente aparecem em algumas interfaces de usuário como algo que você também pode querer instalar. O caso de uso é algo como file-roller(o gerenciador de arquivamento) sugerindo uma biblioteca de compressão mais exótica que poderia ser usada se instalada, mas a maioria das pessoas não deseja.
9788 Andrewsomething #
3
@ fred.bear um bom exemplo é um programa de música como o audacity. Se você deseja copiar CDs, precisa instalar o cdparanoia. Se você quiser codificar / reproduzir mp3s, precisará instalar o lame. Você ainda pode executar o audacity sem eles, mas a maioria das pessoas que o executa espera poder converter CDs em mp3, portanto esses pacotes devem ser recomendados. Também pode codificar para FLAC, mas isso é um candidato melhor para sugestões, pois a maioria das pessoas não usa FLAC.
9787 psusi
@andrewsomething e @psusi ... um par de agradáveis ​​extensões ... obrigado
Peter.O