1 |
-----BEGIN PGP SIGNED MESSAGE----- |
2 |
Hash: SHA256 |
3 |
|
4 |
On 12/08/15 01:50 PM, Ciaran McCreesh wrote: |
5 |
> On Wed, 12 Aug 2015 19:43:55 +0200 Ulrich Mueller |
6 |
> <ulm@g.o> wrote: |
7 |
>>>>>>> On Wed, 12 Aug 2015, Ulrich Mueller wrote: |
8 |
>>> Hm, how about adding a new PM command like "required_use foo |
9 |
>>> -bar"? It would be used exclusively in pkg_pretend, and tell |
10 |
>>> the PM to suggest the necessary package.use changes to the |
11 |
>>> user (or even update them automatically with the appropriate |
12 |
>>> --autounmask-* option). |
13 |
>> |
14 |
>> To clarify, I'm thinking about something like this: |
15 |
>> |
16 |
>> pkg_pretend() { if use qt4; then required_use -qt5 else |
17 |
>> required_use qt5 fi } |
18 |
>> |
19 |
>> The advantage would be that any number of elog messages could |
20 |
>> be added which would further explain things to the user. |
21 |
> |
22 |
> And how would the PM understand that -qt5 is conditional upon |
23 |
> qt4? Such knowledge is required if it's supposed to auto-resolve |
24 |
> stuff... |
25 |
> |
26 |
|
27 |
I don't think required_use could auto-resolve here, without some |
28 |
other rather large changes to PMs -- for instance, the spec |
29 |
pkg_pretend likely needs to be assured to be taken into account |
30 |
before dependency resolution of that package somehow. |
31 |
|
32 |
Also, the required_use function needs to be permitted to modify |
33 |
effective-use and/or do whatever else it does, meaning that for what |
34 |
I believe is the first time we will have function calls in ebuilds |
35 |
modifying the precursors to dependency resolution dynamically rather |
36 |
than it being deterministic based on state and pre-defined static |
37 |
logic. (i hope that makes sense, unsure if i'm using anything even |
38 |
close to the correct terminology) |
39 |
|
40 |
|
41 |
-----BEGIN PGP SIGNATURE----- |
42 |
Version: GnuPG v2 |
43 |
|
44 |
iF4EAREIAAYFAlXLjWcACgkQAJxUfCtlWe2eDwEAzIcJWKlyFVbKzRCWIYEzP+JX |
45 |
DxdOOgnWd9IVfVdwAqQBAOQaJuXjPPpahfyq0qGQDjX6YKhGY2M2b/D/LjIV81HW |
46 |
=oko+ |
47 |
-----END PGP SIGNATURE----- |