Je ne sais pas si c'est plus une question SuperUser ou UnixLinux, mais je vais essayer ici ...
Récemment, j'ai trouvé ceci:
Ce serait bien quand aptitude utiliserait des caractères unicode pour les arbres dans les listes de dépendances, par exemple au lieu de:
--\ Depends (3) --- libc-dev-bin (= 2.17-3) --- libc6 (= 2.17-3) --- linux-libc-dev --\ Suggests (2) --- glibc-doc (UNSATISFIED) --\ manpages-dev
...
... et je pensais - wow, j'aime vraiment cette sortie d'arbre ASCII-art, je ne savais pas que ça aptitude
pouvait faire ça! Donc, je commence à jouer pendant une heure avec des aptitude
commutateurs de ligne de commande - et je ne peux tout simplement pas obtenir cette sortie? Donc ma question initiale était - d'où vient cette sortie en premier lieu?!
Après un certain temps, j'ai réalisé que sur mon système, aptitude
finalement des liens symboliques vers /usr/bin/aptitude-curses
; et j'ai finalement réalisé qu'il aptitude
avait une curses
interface!:/
Donc, j'ai finalement couru aptitude
sans aucun argument - et donc l' curses
interface démarre, et je peux voir quelque chose comme ceci:
... donc bien évidemment, ces caractères arborescents ASCII proviennent de l'interface curses.
Je me demandais donc - existe-t-il un outil Debian / apt, qui produira un tel arbre ASCII "visuel" - mais avec des dépendances réelles des paquets?
Je connais debtree - Graphiques de dépendance de package (également recommandation logicielle - Comment afficher visuellement les dépendances d'un package? - Demandez à Ubuntu ); mais je préfère avoir quelque chose dans le terminal, ressemblant à une arborescence de répertoires (plutôt que les graphiques "non ordonnés" [en termes de position de noeud] debtree
, générés par graphviz
's dot
).
J'ai aussi vu Y a-t-il quelque chose qui montrera visuellement les dépendances, comme un arbre? , qui recommande:
$ apt-rdepends aptitude
Reading package lists... Done
Building dependency tree
Reading state information... Done
aptitude
Depends: libapt-pkg4.10
Depends: libboost-iostreams1.42.0 (>= 1.42.0-1)
Depends: libc6 (>= 2.4)
Depends: libcwidget3
Depends: libept1
Depends: libgcc1 (>= 1:4.1.1)
Depends: libncursesw5 (>= 5.7+20100313)
Depends: libsigc++-2.0-0c2a (>= 2.0.2)
Depends: libsqlite3-0 (>= 3.7.3)
Depends: libstdc++6 (>= 4.5)
Depends: libxapian22
libapt-pkg4.10
libboost-iostreams1.42.0
Depends: libbz2-1.0
Depends: libc6 (>= 2.3.6-6~)
Depends: libgcc1 (>= 1:4.1.1)
Depends: libstdc++6 (>= 4.2.1)
Depends: zlib1g (>= 1:1.1.4)
...
... ce qui est bien, car il répertorie d'abord les dépendances immédiates du package requis; puis les dépendances des packages de dépendances de premier niveau, etc. - mais elles ne sont pas visualisées sous forme d'arborescence (et en fait, aptitude
l' curses
interface affiche simplement les informations installées lorsque vous développez le nœud de dépendance; elle ne s'étend pas à d'autres dépendances).
Donc, la question est - existe-t-il un outil qui produirait un graphique d'arbre de dépendance avec des caractères terminaux - comme, disons, dans le pseudocode suivant:
$ pseudo-deb-graph --show-package="aptitude"
aptitude
--- Depends: libapt-pkg4.10
--\ Depends: libboost-iostreams1.42.0 (>= 1.42.0-1)
--- Depends: libbz2-1.0
--- Depends: libc6 (>= 2.4)
--\ Depends: libc6 (>= 2.3.6-6~)
--\ Depends: libc-bin (= 2.13-0ubuntu13)
--- ...
--\ Depends: libgcc1
--- ...
--\ Depends: tzdata
--- ...
...