If I try to emerge app-misc/screenfetch, I'll be prompted to install a bunch of X libs and set an X USE on imlib2. This should not be necessary, screenfetch is perfectly content with running on a headless box and even without scrot (which should be an rdepend). While it *can* use these things, it does not have to. Below are the libraries that it wants to pull in on my headless box. It's worth noting that if I grab the script myself, it runs perfectly fine without any of these installed. ✓ yuuki shana % emerge -pvt screenfetch % [P ~ ] [J 0 ] [L 1 ] These are the packages that would be merged, in reverse order: Calculating dependencies... done! [ebuild N ] app-misc/screenfetch-3.2.2 46 kB [ebuild N ] media-gfx/scrot-0.8 USE="bash-completion" 73 kB [nomerge ] media-gfx/scrot-0.8 USE="bash-completion" [nomerge ] app-shells/bash-completion-2.1 [ebuild N ] app-shells/gentoo-bashcomp-20121024 28 kB [ebuild N ] app-shells/bash-completion-2.1 260 kB [ebuild N ] app-admin/eselect-bashcomp-1.3.6 164 kB [nomerge ] app-misc/screenfetch-3.2.2 [ebuild N ] x11-apps/xdpyinfo-1.3.1 USE="-dga -dmx -xinerama" 134 kB [ebuild N ] x11-libs/libXtst-1.2.2 USE="-doc -static-libs" 315 kB [ebuild N ] x11-libs/libXcomposite-0.4.4-r1 USE="-doc -static-libs" 278 kB [ebuild N ] x11-libs/libXxf86vm-1.1.3 USE="-static-libs" 278 kB [ebuild N ] x11-libs/libXrender-0.9.8 USE="-static-libs" 299 kB [nomerge ] media-gfx/scrot-0.8 USE="bash-completion" [ebuild N ] media-libs/giblib-1.2.4-r1 USE="-static-libs" 281 kB [nomerge ] x11-libs/libXtst-1.2.2 USE="-doc -static-libs" [ebuild N ] x11-libs/libXi-1.7.2 USE="-doc -static-libs" 431 kB [ebuild N ] x11-libs/libXfixes-5.0.1 USE="-static-libs" 286 kB [nomerge ] media-libs/giblib-1.2.4-r1 USE="-static-libs" [ebuild N ] media-libs/imlib2-1.4.6-r2 USE="X bzip2 nls zlib -doc -gif -jpeg -mmx -mp3 -png -static-libs -tiff" 950 kB [ebuild N ] x11-libs/libXext-1.3.2 USE="-doc -static-libs" 371 kB [ebuild N ] x11-libs/libX11-1.6.2 USE="ipv6 -doc -static-libs {-test}" 2,286 kB [ebuild N ] x11-libs/libxcb-1.10 USE="-doc (-selinux) -static-libs -xkb" 465 kB [ebuild N ] x11-proto/xcb-proto-1.10 PYTHON_TARGETS="python2_7 python3_3 (-python2_6) -python3_2" 136 kB [nomerge ] x11-libs/libXcomposite-0.4.4-r1 USE="-doc -static-libs" [nomerge ] x11-libs/libXfixes-5.0.1 USE="-static-libs" [ebuild N ] x11-proto/fixesproto-5.0-r1 99 kB [nomerge ] x11-libs/libXtst-1.2.2 USE="-doc -static-libs" [ebuild N ] x11-proto/recordproto-1.14.2-r1 USE="-doc" 121 kB [nomerge ] x11-apps/xdpyinfo-1.3.1 USE="-dga -dmx -xinerama" [nomerge ] x11-libs/libxcb-1.10 USE="-doc (-selinux) -static-libs -xkb" [ebuild N ] dev-libs/libpthread-stubs-0.3-r1 USE="-static-libs" 199 kB [ebuild N ] x11-libs/libXdmcp-1.1.1-r1 USE="-doc -static-libs" 304 kB [ebuild N ] x11-libs/libXau-1.0.8 USE="-static-libs" 289 kB [nomerge ] x11-libs/libXfixes-5.0.1 USE="-static-libs" [nomerge ] x11-libs/libX11-1.6.2 USE="ipv6 -doc -static-libs {-test}" [ebuild N ] x11-libs/xtrans-1.3.4 USE="-doc" 179 kB [ebuild N ] media-fonts/font-util-1.3.0 139 kB [ebuild N ] x11-proto/xf86bigfontproto-1.2.0-r1 49 kB [ebuild N ] x11-misc/util-macros-1.19.0 79 kB [nomerge ] x11-libs/libXrender-0.9.8 USE="-static-libs" [ebuild N ] x11-proto/renderproto-0.11.1-r1 104 kB [nomerge ] x11-libs/libXxf86vm-1.1.3 USE="-static-libs" [ebuild N ] x11-proto/xf86vidmodeproto-2.3.1-r1 95 kB [nomerge ] x11-apps/xdpyinfo-1.3.1 USE="-dga -dmx -xinerama" [ebuild N ] x11-proto/compositeproto-0.4.2-r1 99 kB [ebuild N ] x11-proto/kbproto-1.0.6-r1 251 kB [ebuild N ] x11-proto/inputproto-2.3.1 192 kB [ebuild N ] x11-proto/xextproto-7.3.0 USE="-doc" 224 kB [ebuild N ] x11-proto/xproto-7.0.26 USE="-doc" 299 kB [nomerge ] app-shells/bash-completion-2.1 [ebuild N ] sys-apps/miscfiles-1.5-r1 USE="-minimal" 1,676 kB Total: 35 packages (35 new), Size of downloads: 11,459 kB The following USE changes are necessary to proceed: (see "package.use" in the portage(5) man page for more details) # required by media-libs/giblib-1.2.4-r1 # required by media-gfx/scrot-0.8 # required by app-misc/screenfetch-3.2.2 # required by screenfetch (argument) =media-libs/imlib2-1.4.6-r2 X Reproducible: Always
I agree. scrot is optional and should really be managed by a X use flag.
+ 12 Jul 2014; Markos Chandras <hwoarang@gentoo.org> -screenfetch-2.9.0.ebuild, + -screenfetch-3.0.5.ebuild, metadata.xml, screenfetch-2.7.7.ebuild, + screenfetch-3.2.2.ebuild, screenfetch-9999.ebuild: + Use the X flag to pull the media-gfx/scrot package for screenshots. Bug + #515538. Drop old packages +
This was not just about scrot but the X libraries in general. There are still many unnecessary X dependencies even with -X: ✓ yuuki shana % emerge -pvt screenfetch % [P ~ ] [J 0 ] [L 3 ] These are the packages that would be merged, in reverse order: Calculating dependencies... done! [ebuild N ] app-misc/screenfetch-3.2.2 USE="-X" 46 kB [ebuild N ] x11-apps/xdpyinfo-1.3.1 USE="-dga -dmx -xinerama" 134 kB [ebuild N ] x11-libs/libXxf86vm-1.1.3 USE="-static-libs" 278 kB [ebuild N ] x11-libs/libXcomposite-0.4.4-r1 USE="-doc -static-libs" 278 kB [ebuild N ] x11-libs/libXrender-0.9.8 USE="-static-libs" 299 kB [ebuild N ] x11-libs/libXtst-1.2.2 USE="-doc -static-libs" 315 kB [ebuild N ] x11-libs/libXi-1.7.2 USE="-doc -static-libs" 431 kB [ebuild N ] x11-libs/libXfixes-5.0.1 USE="-static-libs" 286 kB [ebuild N ] x11-libs/libXext-1.3.2 USE="-doc -static-libs" 371 kB [ebuild N ] x11-libs/libX11-1.6.2 USE="ipv6 -doc -static-libs {-test}" 2,286 kB [ebuild N ] x11-libs/libxcb-1.10 USE="-doc (-selinux) -static-libs -xkb" 465 kB [ebuild N ] x11-proto/xcb-proto-1.10 PYTHON_TARGETS="python2_7 python3_3 -python3_2" 136 kB [ebuild N ] x11-misc/util-macros-1.19.0 79 kB [ebuild N ] x11-libs/xtrans-1.3.4 USE="-doc" 179 kB [ebuild N ] x11-proto/xf86bigfontproto-1.2.0-r1 49 kB [ebuild N ] media-fonts/font-util-1.3.0 139 kB [ebuild N ] x11-proto/recordproto-1.14.2-r1 USE="-doc" 121 kB [nomerge ] x11-libs/libXcomposite-0.4.4-r1 USE="-doc -static-libs" [nomerge ] x11-libs/libXfixes-5.0.1 USE="-static-libs" [ebuild N ] x11-proto/fixesproto-5.0-r1 99 kB [nomerge ] x11-apps/xdpyinfo-1.3.1 USE="-dga -dmx -xinerama" [nomerge ] x11-libs/libxcb-1.10 USE="-doc (-selinux) -static-libs -xkb" [ebuild N ] x11-libs/libXdmcp-1.1.1-r1 USE="-doc -static-libs" 304 kB [ebuild N ] dev-libs/libpthread-stubs-0.3-r1 USE="-static-libs" 199 kB [ebuild N ] x11-libs/libXau-1.0.8 USE="-static-libs" 289 kB [ebuild N ] x11-proto/kbproto-1.0.6-r1 251 kB [ebuild N ] x11-proto/xf86vidmodeproto-2.3.1-r1 95 kB [ebuild N ] x11-proto/renderproto-0.11.1-r1 104 kB [ebuild N ] x11-proto/compositeproto-0.4.2-r1 99 kB [ebuild N ] x11-proto/inputproto-2.3.1 192 kB [ebuild N ] x11-proto/xextproto-7.3.0 USE="-doc" 224 kB [ebuild N ] x11-proto/xproto-7.0.26 USE="-doc" 299 kB Please re-open unless you disagree.
I added x11-apps/xdpyinfo to optional deps as well.