Easy Way to have Homebrew list all package dependencies

↘锁芯ラ 提交于 2021-02-17 07:28:32

问题


Is there anyway to have the command brew show all the installed or optional dependencies for any given package? It would also be helpful to see which of the install packages are themselves the dependencies of others packages.


回答1:


You can use info command like.

brew info ffmpeg

It will show you information and dependencies of formula. Also, it shows if this package installed by a tick after name of it.




回答2:


brew deps --tree --installed

Thanks to rob-kovacs for suggesting the --tree addition

See this super helpful article for details: https://blog.jpalardy.com/posts/untangling-your-homebrew-dependencies/ Especially if you're interested in creating a graph of the dependency tree.




回答3:


Here is a command that will list all formulas that aren't dependent of any other formulas (leaves) and in front of them list all its dependencies.

brew leaves | xargs brew deps --installed --for-each | sed "s/^.*:/$(tput setaf 4)&$(tput sgr0)/"



回答4:


I found the brew deps --tree switch is also very helpful to visualize dependencies just in the command line. From the official doc:

brew deps --tree [--1] [filters] [--annotate] (formulae|--installed):
Show dependencies as a tree. When given multiple formula arguments, output
individual trees for every formula.

Example1:

brew deps --tree fontconfig

Output1:

fontconfig
└── freetype
    └── libpng

Example2:

brew deps --tree --1 fontconfig

Output2:

fontconfig
└── freetype

and there are more switches explained by:

brew help deps



回答5:


Command:

brew deps --include-build --tree $(brew leaves)

Convenient alias:

alias brewlist="brew leaves | xargs brew deps --include-build --tree"

This way you will get dependencies printed hierarchically and each package will be printed only once.



来源:https://stackoverflow.com/questions/41029842/easy-way-to-have-homebrew-list-all-package-dependencies

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!