Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev@l.g.o
Cc: leho@×××××.com
Subject: Re: [gentoo-dev] emerge --depclean vs missing IUSE in older ebuild.. what exactly is right?
Date: Mon, 31 Dec 2012 15:35:22
Message-Id: 20121231163444.14d8a4d5@pomiocik.lan
In Reply to: [gentoo-dev] emerge --depclean vs missing IUSE in older ebuild.. what exactly is right? by Leho Kraav
1 On Mon, 31 Dec 2012 17:22:16 +0200
2 Leho Kraav <leho@×××××.com> wrote:
3
4 > Just bumped into something I haven't encountered before. Running amd64.
5 >
6 > Already had sys-auth/pambase-20101024-r2 (stable) installed. Then
7 > installed gnome-base/gdm-3.4.1-r3 binpkg, binhost had newer pambase,
8 > which is why this didn't surface before.
9 >
10 > Everything is fine for runtime, but emerge --depclean pukes with
11 > "sys-auth/pambase[consolekit] is not installed". Looking at this from
12 > all angles, this condition *is* most certainly fulfilled.
13 >
14 > Trying to re-emerge gdm from source revealed that only
15 > >=pambase-20120417 seems to fulfill its requirements. Initially I
16 > couldn't figure out why.
17 >
18 > Poking around in gdm-3.4.1-r3.ebuild L56 reveals [1]:
19 >
20 > sys-auth/pambase[consolekit?,systemd?]
21 >
22 > This lead me to check the pambase-2010 ebuild and sure enough there is
23 > no IUSE="systemd" flag.
24 > Adding "systemd" to /var/db/pkg/sys-auth/pambase-20101024-r2/IUSE made
25 > emerge --depclean work just fine.
26 >
27 > Now, my question is: why does portage-2.1.11.31 not calculate a missing
28 > IUSE=systemd in ebuild for being the same as just USE="-systemd"? It
29 > feels like pambase-20101024-r2.ebuild [2] should fulfill gdm-3.4.1
30 > requirements just fine, but it doesn't, at least not for this portage
31 > version.
32 >
33 > Am I missing anything known and obvious?
34
35 http://dev.gentoo.org/~ulm/pms/5/pms.html#x1-870008.2.6.4
36
37 «Unless a 4-style default is specified, it is an error for a use
38 dependency to be applied to an ebuild which does not have the flag in
39 question in IUSE_REFERENCEABLE.»
40
41 which in understandable language means that without USE defaults, even
42 [-foo] matches only packages which have 'foo' in IUSE.
43
44 --
45 Best regards,
46 Michał Górny

Attachments

File name MIME type
signature.asc application/pgp-signature

Replies