Non sono sicuro che si tratti più di una domanda SuperUser o UnixLinux, ma proverò qui ...
Di recente, ho trovato questo:
# 710689 - aptitude: usa il carattere unicode negli alberi - Log dei report dei bug di Debian
Sarebbe bello quando aptitude usasse i caratteri unicode per gli alberi negli elenchi delle dipendenze, ad esempio invece di:
--\ Depends (3) --- libc-dev-bin (= 2.17-3) --- libc6 (= 2.17-3) --- linux-libc-dev --\ Suggests (2) --- glibc-doc (UNSATISFIED) --\ manpages-dev
...
... e ho pensato: wow, mi piace molto quell'output dell'albero di arte ASCII, non sapevo che aptitude
potesse farlo! Quindi, inizio a fare casino per un'ora con le aptitude
opzioni della riga di comando - e semplicemente non riesco a ottenere quell'output? Quindi la mia domanda iniziale era: da dove proviene quell'output ?!
Dopo un po ', mi sono reso conto che sul mio sistema, alla aptitude
fine , si collegava a symlink /usr/bin/aptitude-curses
; e ho finalmente capito che aptitude
ha curses
un'interfaccia!:/
Quindi, finalmente corro aptitude
senza argomenti - e quindi l' curses
interfaccia si avvia, e posso vedere qualcosa del genere:
... così ovviamente, quei personaggi dell'albero ASCII provengono dall'interfaccia delle maledizioni.
Quindi mi chiedevo: esiste uno strumento Debian / apt, che produrrà un albero ASCII "visivo" - ma con effettive dipendenze dei pacchetti?
Conosco il debito - Grafici di dipendenza del pacchetto (anche raccomandazione del software - Come visualizzare visivamente le dipendenze di un pacchetto? - Chiedi a Ubuntu ); ma preferirei avere qualcosa nel terminale, simile a un albero di directory (piuttosto che ai grafici "non ordinati" [in termini di posizione del nodo] debtree
, generati da graphviz
"s" dot
.
Ho visto anche C'è qualcosa che mostrerà le dipendenze visivamente, come un albero? , che raccomanda:
$ 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)
...
... il che è positivo, perché elenca innanzitutto le dipendenze immediate del pacchetto richiesto; e quindi le dipendenze dei pacchetti di dipendenza di primo livello, e così via - ma non viene visualizzato come un albero (e in realtà aptitude
l' curses
interfaccia mostra semplicemente le informazioni installate quando si espande il nodo di dipendenza; non si espande in ulteriori dipendenze).
Quindi, la domanda è: esiste uno strumento che produrrebbe un grafico ad albero delle dipendenze con caratteri terminali - come, diciamo, nel seguente pseudocodice:
$ 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
--- ...
...