dependancies and the ports that depend on them

@lbutlr kremels at kreme.com
Sat Sep 22 07:53:23 UTC 2018


My system has no X11 window system of any sort on it, it is simply a server which I (or anyone else) only interact with via the command line or by accessing a service like http or mail.
And yet, there's a lot of x11 packages installed.

I'd like to find out what packages depend on the many x11 packages that are installed. I know that quiet a few are under apache25, despite there being no mention of x11 in make config:

…www/apache24/# make WITHOUT_X11=yes NOPORTDOCS=yes NOPORTEXAMPLES=yes all-depends-list | grep x11
/usr/ports/x11/xcb-util-renderutil
/usr/ports/x11/libxcb
/usr/ports/x11/xcb-proto
/usr/ports/x11/libXau
/usr/ports/x11/xorgproto
/usr/ports/x11/libXdmcp
/usr/ports/x11/xcb-util
/usr/ports/x11/pixman
/usr/ports/x11/libX11
/usr/ports/x11/xtrans
/usr/ports/x11/libXext
/usr/ports/x11/libXrender
/usr/ports/x11-fonts/fontconfig
/usr/ports/x11/libXdamage
/usr/ports/x11/libXfixes
/usr/ports/x11/libxshmfence
/usr/ports/x11/libXxf86vm
/usr/ports/x11/libXi
/usr/ports/x11-toolkits/libXt
/usr/ports/x11/libSM
/usr/ports/x11/libICE
/usr/ports/x11/libXtst
/usr/ports/x11-fonts/dejavu
/usr/ports/x11-fonts/mkfontdir
/usr/ports/x11-fonts/mkfontscale
/usr/ports/x11-fonts/libfontenc

So, I'd like to figure out which features (make config toggles) are responsible for these requirements so i can see if they are things that can be disabled.

For example, one thing listed is libX11, so I do

pkg info -r libX11
libX11-1.6.6_1,1:
        gdk-pixbuf2-2.36.11
        libXdamage-1.1.4_4
        libXxf86vm-1.1.4_2
        mesa-libs-18.1.5
        cairo-1.14.8_2,2
        libXcomposite-0.4.4_4,1
        libXcursor-1.1.15_1
        libXinerama-1.1.4_1,1
        libXrandr-1.5.1_1
        gtk-update-icon-cache-2.24.32
        libXpm-3.5.12_1
        gtk2-2.24.32
        vim-8.1.0342
        libXt-1.1.5_2,1
        libXext-1.3.3_3,1
        libXfixes-5.0.3_2
        libXi-1.7.9_2,1
        libXrender-0.9.10_2
        libXtst-1.2.3_2
        openjdk8-8.181.13
        openjdk-7.161.01,1

So now I have to go through each of those to see which one might be required by apach24. Within a coupe of steps you are checking a hundred packages.

Is there som way to say "I want to search everything that requires libx11 all the way up the tree of dependencies until we match apache24, then show me that chain.

(so, for example, if apache24 is set to require libfoo99 and libfoo99 requires bobsport and bobsport requires libXfoo which requires libx11

I get:

apache24 <= libfoo99 <= bobsport <= libXfoo <= libx11

when I search for something like "libx11 in apache24"

-- 
Penny, I'm a physicist. I have a working knowledge of the entire
universe and everything it contains.




More information about the freebsd-ports mailing list