Gentoo Logo
Gentoo Spaceship

Installation:
Gentoo Handbook
Installation Docs

Documentation:
Home
Listing
About Gentoo
Philosophy
Social Contract

Resources:
Bug Tracker
Developer List
Discussion Forums
Gentoo BitTorrents
Gentoo Linux Enhancement Proposals
IRC Channels
Mailing Lists
Mirrors
Name and Logo Guidelines
Online Package Database
Security Announcements
Staffing Needs
Supporting Vendors
View our CVS

Graphics:
Logos and themes
Icons
ScreenShots

Miscellaneous Resources:
Gentoo Linux Store
Gentoo-hosted projects
IBM dW/Intel article archive




List Archive: gentoo-dev
Navigation:
Lists: gentoo-dev: < Prev By Thread Next > < Prev By Date Next >
Headers:
To: gentoo-dev@g.o
From: Zac Medico <zmedico@g.o>
Subject: Re: EAPI-2
Date: Sun, 14 Sep 2008 17:00:04 -0700
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Carsten Lohrke wrote:
> On Sonntag, 14. September 2008, Zac Medico wrote:
>> Well, I'm open to alternative suggestions. Please see the previous
>> email in which I've attempted to explain the reasoning for the given
>> approach [1]. It seems to me that this approach is well suited for
>> solving cases in which temporary simultaneous installation of
>> blocking packages is needed.
> 
> Thanks for pointing me to it, Zac. I do not pretend to be able to pull the 
> white bunny out of the black hat, presenting you the perfect alternative, 
> especially since you've thought about it a lot more than me. I just feel 
> uncomfortable, having ebuilds overwrite each others files. According to the 
> referenced data, it'll work around a number of issues. The time will show, If 
> real hard blocker issues remain a problem, I guess.

Since >=sys-apps/portage-2.1.5, heuristics have been used to allow
this behavior and there hasn't been a single report of it causing a
problem. Note that !atom will mean "_may_ be temporarily installed
simultaneously" rather than "_must_ be temporarily installed
simultaneously". Just because they _may_ be installed simultaneously
doesn't mean that it makes any sense to do so. It's only needed to
resolve a subset of cases (like bug 234886 [1]) and it's probably
best for the package manager to avoid doing it whenever possible.
When portage uses heuristics to trigger this behavior, as it does
when solving bug 234886 [1] automatically, it only uses this
approach when it finds that no viable alternative solution exists.

I might add that I consider these blocker extensions to have vital
importance since experience has show that manual resolution of
blockers is often difficult for users to accomplish on their own,
and even when they seek advice from others, they are often given
faulty advice. Most people just don't have the knowledge or
experience necessary to manually solve these types of problems
correctly. Even when the user does know how to manually solve the
problem correctly, it's an annoying task that's much better
automated. I consider lack of automatic resolution to be a severe
usability issue which upsets users and also increases supports costs
in the form of users complaining or seeking help in places like
{bugs,forums,lists}.gentoo.org.

>> Again, please see my previous email on this subject [1]. The reason
>> that I think we should change the meaning of the '!' symbol is that
>> the majority of existing EAPI 0 or 1 blockers appear to fit the new
>> meaning already. So, we'll only have to use the new !!atom syntax
>> for special cases in which temporary simultaneous installation of
>> blocking packages must be explicitly forbidden.
> 
> Just the majority or pretty much all and the others are easily to find out and 
> moved to EAPI 2, so the point I raised ceases to exist!?

It seems to me that the new !!atom syntax will only be needed in
relatively few cases, and it won't be hard for ebuild maintainers to
adjust to. I'm open to alternative suggestions though...

> I want to share another thought regarding this proposed addtion:
> 
> !! has the double meaning a) "unmerge the following ebuilds later" and 
> b) "overwriting files of the following ebuilds while merging changes makes 
> them owned by the freshly merged ebuild"
> 
> so we have one symbol denoting two different commands, which could find use 
> independently. Moreso, if we add more of these symbols to express something 
> different, our syntax may look almost like Lisp in the end:
> 
>  use? ( ! ( X ( Y ( || ( ( foo bar ) baz ) ) ) ) ) )
> 
> Looks ugly, doesnt it? 
> 
> How about using two symbols for !! and having the possibility to aggreagate 
> them, e.g.
> 
> use? ( !XY||: ( ( foo bar ) baz ) )
> 
> instead?!

Well, I suspect that you might be complicating things more than
necessary. I tend to think the syntax extensions that I've already
proposed are well suited to our needs.

[1] http://bugs.gentoo.org/show_bug.cgi?id=234886
- --
Thanks,
Zac
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (GNU/Linux)

iEYEARECAAYFAkjNpYMACgkQ/ejvha5XGaOMjgCgqAYk6eeMyLUOS9qdC0lZU8GK
uVMAn0/cf9xJPnAppok+AvkQ/99MGQhQ
=r1D/
-----END PGP SIGNATURE-----


Replies:
Re: EAPI-2
-- Duncan
References:
EAPI-2
-- Jorge Manuel B. S. Vicetto
Re: EAPI-2
-- Carsten Lohrke
Re: EAPI-2
-- Zac Medico
Re: EAPI-2
-- Carsten Lohrke
Navigation:
Lists: gentoo-dev: < Prev By Thread Next > < Prev By Date Next >
Previous by thread:
Re: EAPI-2
Next by thread:
Re: EAPI-2
Previous by date:
Re: EAPI-2
Next by date:
Automated Package Removal and Addition Tracker, for the week ending 2008-09-14 23h59 UTC


Updated Jun 17, 2009

Donate to support our development efforts.

Gentoo Centric Hosting: vr.org

VR Hosted

Tek Alchemy

Tek Alchemy

SevenL.net

SevenL.net

php|architect

php|architect

Copyright 2001-2007 Gentoo Foundation, Inc. Questions, Comments? Email www@gentoo.org.