Welche Bedeutung haben Suggests, Recommends, |, <> in der Ausgabe von "apt-cache depend"?

20

Ich habe die Man / Info-Seite überprüft, aber es gibt keinen Hinweis auf einige Aspekte des Ausgabeformats von apt-cache depends

Die Man / Info-Seite hat versucht, hilfreich zu sein (auf stumpfe Weise); Zitat: "Für die genaue Bedeutung des Restes der Ausgabe ist es am besten, den passenden Quellcode zu konsultieren."

Nun zur Fairness der Infoseite, dieses Zitat bezog sich auf die Option 'showpkg', die es einigermaßen erklärt hatte, aber meine Option hatte keine solche Erklärung ... Ich verstehe, dass Linux-Informationen aus vielen Quellen stammen (nicht nur man / info) Seiten), und ich möchte nicht besonders in der Quelle stöbern (obwohl ich das manchmal tue), also hier ein Beispiel von dem, was ich gerne wissen würde, was es bedeutet.

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

Antworten:

15

Die maßgebliche Referenz ist das Debian-Richtlinienhandbuch: http://www.debian.org/doc/debian-policy/

Zitieren des Handbuchs:

Das Feld Empfiehlt sollte Pakete auflisten, die zusammen mit diesem in allen außer ungewöhnlichen Installationen gefunden würden.

Vorschläge: Dies wird verwendet, um zu deklarieren, dass ein Paket für ein oder mehrere andere Pakete nützlicher sein kann. Die Verwendung dieses Felds teilt dem Verpackungssystem und dem Benutzer mit, dass die aufgelisteten Pakete mit diesem verwandt sind und möglicherweise dessen Nützlichkeit verbessern können, dass jedoch die Installation dieses Pakets ohne sie durchaus sinnvoll ist.

In diesen Tagen werden empfohlene Pakete ebenfalls standardmäßig installiert (wenn Sie das Paket installieren, das die Empfehlung ausführt).

Wie Sie vermutet haben zeigt "oder" an. Die Kontrolllinie zeigt normalerweise foo | leiste, aber apt-cache hängt anscheinend davon ab, es neu zu formatieren, indem jede Alternative in einer eigenen Zeile angezeigt und der ersten das | vorangestellt wird. Mit anderen Worten, die Pipe markiert die bevorzugte Option und die nächste Zeile ist die Alternative.

Das in spitzen Klammern aufgeführte Paket gibt an, dass es sich um ein virtuelles Paket handelt. Die Pakete, die in den eingerückten Zeilen danach aufgeführt sind, sind die verschiedenen Pakete, die diesen Dienst bereitstellen.

Psusi
quelle
Danke Psusi. Das hat mich sicherlich auf den richtigen Weg gebracht. Der Unterschied zwischen Empfiehlt und Empfiehlt ist für mich immer noch ein bisschen vage, aber ich bin mir sicher, dass ich jetzt ungefähr weiß, was sie bedeuten, ich werde es allmählich "verstehen" durch das Aussetzen auf einige Beispiele, in denen ich bereits ein Gefühl dafür habe, was und warum etwas vorgeschlagen oder empfohlen wird.
Peter.O
2
Empfehlungen werden jetzt standardmäßig installiert und Vorschläge nicht. Das ist der Hauptunterschied in der Praxis. Grundsätzlich empfiehlt es sich, zuzulassen, dass Sie von etwas "abhängig" sind, dem Benutzer jedoch die Möglichkeit geben, das Programm trotzdem zu deinstallieren, ohne die Pakete zu deinstallieren. Vorschläge werden in einigen Benutzeroberflächen lediglich als etwas angezeigt, das Sie möglicherweise auch installieren möchten. Der Anwendungsfall ist so etwas wie file-roller(der Archivmanager), der eine exotischere Komprimierungsbibliothek vorschlägt, die verwendet werden könnte, wenn sie installiert ist, aber die meisten Leute nicht möchten.
Andrewsomething
3
@ Fred.bear Ein gutes Beispiel ist ein Musikprogramm wie Audacity. Wenn Sie CDs rippen möchten, müssen Sie cdparanoia installieren. Wenn Sie MP3s kodieren / abspielen möchten, müssen Sie lame installieren. Sie können Audacity auch ohne diese ausführen, aber die meisten Leute, die es ausführen, gehen davon aus, dass es CDs in MP3 rippen kann. Daher sollten diese Pakete empfohlen werden. Es kann auch in FLAC codiert werden, dies ist jedoch ein besserer Kandidat für Vorschläge, da die meisten Benutzer FLAC nicht verwenden.
Psusi
@andrewsomething und @psusi ... ein paar nette extas ... danke
Peter.O