I was surprised "emerge -u world" tries to install so many new packages on my system. For example, /usr/portage/app-editors/emacs/emacs-21.4-r1.ebuild causes several gnome pakcages to be installed first. It turned out I did not have "-gnome" in USE flags. I thought omitting "gnome" has same effect as "-gnome". :( The emacs-21.4-r1.ebuild contains: inherit flag-o-matic eutils alternatives toolchain-funcs DESCRIPTION="An incredibly powerful, extensible text editor" HOMEPAGE="http://www.gnu.org/software/emacs" SRC_URI="mirror://gnu/emacs/${P}a.tar.gz leim? ( mirror://gnu/emacs/leim-${PV}.tar.gz )" LICENSE="GPL-2" SLOT="21" KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86" IUSE="X Xaw3d gnome leim lesstif motif nls nosendmail" RDEPEND="sys-libs/ncurses sys-libs/gdbm X? ( virtual/x11 >=media-libs/giflib-4.1.0.1b >=media-libs/jpeg-6b-r2 >=media-libs/tiff-3.5.5-r3 >=media-libs/libpng-1.2.1 !arm? ( Xaw3d? ( x11-libs/Xaw3d ) motif? ( lesstif? ( x11-libs/lesstif ) !lesstif? ( >=x11-libs/openmotif-2.1.30 ) ) gnome? ( gnome-base/gnome-desktop ) ) ) nls? ( sys-devel/gettext ) !nosendmail? ( virtual/mta )" DEPEND="${RDEPEND} >=sys-devel/autoconf-2.58" Now I have: # emerge info Portage 2.0.51.22-r1 (default-linux/x86/2005.0, gcc-3.4.4, glibc-2.3.5-r0, 2.6.11.7 i686) ================================================================= System uname: 2.6.11.7 i686 Intel(R) Pentium(R) 4 CPU 2.60GHz Gentoo Base System version 1.6.12 ccache version 2.3 [disabled] dev-lang/python: 2.3.5, 2.4.1-r1 sys-apps/sandbox: 1.2.9 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.5 sys-devel/binutils: 2.16.1 sys-devel/libtool: 1.5.18-r1 virtual/os-headers: 2.4.19-r1, 2.6.11-r2 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-mmmx -msse -msse2 -O2 -fomit-frame-pointer -mtune=pentium4 -march=pentium4 -funroll-loops -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/bind /var/qmail/alias /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-mmmx -msse -msse2 -O2 -fomit-frame-pointer -mtune=pentium4 -march=pentium4 -funroll-loops -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="ftp://ftp.muni.cz/pub/linux/gentoo http://gentoo.mirror.icd.hu/ http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ http://gd.tuwien.ac.at/opsys/linux/gentoo/ ftp://ftp.tu-clausthal.de/pub/linux/gentoo/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 X Xaw3d acpi apache2 apm arts ati avi berkdb bidi bitmap-fonts bonobo cdr crypt cscope cups curl dba dga directfb dvb dvd dvdr emacs emacs-w3 emboss encode esd ethereal f77 fam fbcom flac foomaticdb fortran freetype2 fvwm fvwm2 gb gd gdbm ggi gif gphoto2 gpm gstreamer gtk gtk2 gtkhtml icc imagemagick imlib innodb java jpeg lcms leim libg++ libwww mad mcal mesa mikmod mmx motif mozilla mp3 mpeg mule mysql ncurses nls nptl ogg oggvorbis opengl oss pam pda pdflib perl plotutils png ppds pthread pthreads python qt quicktime readline samba scanner sdl slang slp spell sse sse2 ssl tcltk tcpd tetex thread threads tiff truetype truetype-fonts type1-fonts unicode usb vorbis wmf xml xml2 xmms xosd xv zeo zlib video_cards_radeon userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS # grep USE /etc/make.conf # The USE variable is used to enable optional build-time functionality. For # very extensive set of USE variables described in our USE variable HOWTO at USE="-svgalib -svga acpi -afs -alsa apache2 arts ati avi berkdb bidi bonobo cdr crypt cscope cups curl dba dga directfb -doc dvb dvd dvdr emacs emacs-w3 encode ethereal f77 fam fbcom -flash freetype2 gb gd gdbm ggi gif -gnome gphoto2 gpm gtk gtk2 gtkhtml icc imagemagick imlib innodb -ipv6 java jpeg -kde lcms leim libwww mad mesa mcal mikmod mmx motif mozilla mpeg mule mysql ncurses nls nptl opengl pam pda ppds pdflib perl plotutils png python qt quicktime readline samba sdl slp spell sse sse2 ssl tcltk tcpd tetex thread threads pthreads pthread tiff truetype unicode usb Xaw3d wmf X xosd xml xml2 xmms xv zeo zlib fvwm2 fvwm" # Reproducible: Always Steps to Reproduce: 1. 2. 3.
The default x86 profiles enable USE=gnome by default, so if you don't want it enabled you have to disable it in make.conf. If you don't want it on by default that's another bug, though I don't see it changing any time soon, given how easy it is to disable it yourself.
OK, but would you then document that _some_ are turned on by default right above the USE line in /etc/make.conf template? Thanks!
(In reply to comment #2) > OK, but would you then document that _some_ are turned on by default right above > the USE line in /etc/make.conf template? Thanks! Eh, document them? emerge --info with empty use flags in make.conf shows them for you. Here goes your documentation: less /usr/portage/profiles/default-linux/x86/make.defaults
From http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=2&chap=2#doc_chap2_sect1: "To make it easy for users to search and pick USE-flags, we already provide a default USE setting." If you really want to start with an empty USE, put -* as the first element in the USE line in make.conf