From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from lists.gentoo.org ([140.105.134.102] helo=robin.gentoo.org) by nuthatch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1Fxoib-0001Kc-6h for garchives@archives.gentoo.org; Tue, 04 Jul 2006 17:29:49 +0000 Received: from robin.gentoo.org (localhost [127.0.0.1]) by robin.gentoo.org (8.13.7/8.13.6) with SMTP id k64HPptp024078; Tue, 4 Jul 2006 17:25:51 GMT Received: from cranium.sybase.co.za (sqlprd.sybase.co.za [192.96.139.1]) by robin.gentoo.org (8.13.7/8.13.6) with ESMTP id k64HC1GH029951 for ; Tue, 4 Jul 2006 17:12:02 GMT Received: from localhost (cranium.sybase.co.za [127.0.0.1]) by cranium.sybase.co.za (Postfix) with ESMTP id DB47C8343D for ; Tue, 4 Jul 2006 20:31:46 +0200 (SAST) X-Virus-Scanned: amavisd-new at sybase.co.za Received: from cranium.sybase.co.za ([127.0.0.1]) by localhost (cranium.sybase.co.za [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id fOMNQvtM89P1 for ; Tue, 4 Jul 2006 20:31:30 +0200 (SAST) Received: from [192.168.2.64] (unknown [192.168.2.64]) by cranium.sybase.co.za (Postfix) with ESMTP id 71EC483442 for ; Tue, 4 Jul 2006 20:31:27 +0200 (SAST) Subject: Re: Re[2]: [gentoo-user] xorg-x11 screwup From: Alan McKinnon To: gentoo-user@lists.gentoo.org In-Reply-To: References: <1151881520.517.7.camel@bunyip> <87odw7qmps.fsf@newton.gmurray.org.uk> <20060704093509.F86E.NICK@rout.co.nz> Content-Type: text/plain Date: Tue, 04 Jul 2006 19:11:39 +0200 Message-Id: <1152033099.6231.6.camel@localhost.localdomain> Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-user@gentoo.org Reply-to: gentoo-user@lists.gentoo.org Mime-Version: 1.0 X-Mailer: Evolution 2.6.1 Content-Transfer-Encoding: 7bit X-Archives-Salt: ebe40f48-5f53-49fc-be67-7bbe6c641d98 X-Archives-Hash: 1211b79eaf3dd073b19ed31e40d82de0 On Tue, 2006-07-04 at 18:29 +0200, Robert Cernansky wrote: > NR> new system, no gui installed. > NR> > NR> I install kde-meta, which installs xorg-x11 as a dependency. > NR> > NR> I decide I want gnome, I install gnome which doesn't install xorg, > NR> because it is already installed. > NR> > NR> I decide I do not want kde because i prefer gnome. I unsinstall > NR> kde-meta. Under your scheme it would also uninstall xorg-x11. But > that > NR> is not what you want! > > Hmm, it can be done with "garbage collector principe". Each > package will have counter which increases when some package which > depend on > it is installed. Decreased, when the package is uninstalled. If > counter is > zero, "dependency" package can be uninstalled along with package > specified > for uninstalling. No, that still doesn't work. When the user unmerges kde-meta, with your proposal it will unmerge X11. The next step is that the user emerges gnome which first emerges X11 back again. This isn't so bad with a binary distro if the packages are on a CD, but on gentoo it's murder. The only sane thing to do is to emerge dependencies when required and unmerge only thinks specifically asked for to be unmerged. You can't even reliably prompt the user with a dialog that says "The following dependencies of the package about to be unmerged are needed by no other package. Shall they be unmerged?" because of *deep* dependencies. Reverse constructing a multi-node tree and applying logic to it is no joke, hence the wise decision to have portage ignore this amazingly efficient bug-injecting process. alan -- gentoo-user@gentoo.org mailing list