1 |
On Wednesday 20 July 2011 14:16:06 Grant Edwards did opine thusly: |
2 |
> On 2011-07-20, Mick <michaelkintzios@×××××.com> wrote: |
3 |
> > Every time after you emerge xorg you're meant to remerge its |
4 |
> > drivers (evdev being one of them). Usually there is some elog |
5 |
> > message telling you to run |
6 |
> > |
7 |
> > qfile to find what is need to be reinstalled: |
8 |
> > qlist -I -C x11-drivers/ |
9 |
> |
10 |
> I've always wondered why, if portage knows that has to be done, |
11 |
> can't portage just go ahead and do it? |
12 |
|
13 |
Actually not. Portage doesn't know it has to be done, the ebuild dev |
14 |
knows and stuck a literal message in one of the post_() functions. |
15 |
|
16 |
To do what you mention, the driver would have to depend on xorg, but |
17 |
in fact xorg-server depends on the xorg-drivers meta package, which in |
18 |
turn depends on the drivers defined in USE. |
19 |
|
20 |
In theory, one could use PDEPEND I suppose, but I also suspect that |
21 |
would cause circular dependencies. The other option is to put an |
22 |
emerge call in pkg_postinst() but that would be heavily frowned upon |
23 |
as |
24 |
|
25 |
- it's a highly unusual solution and just an ugly hack |
26 |
- it wreaks the dep graph that emerge generates |
27 |
- stuff will get emerged that isn't visible at the beginning |
28 |
- portage can't definitively tell you before you start that the |
29 |
drivers will be remerged |
30 |
|
31 |
|
32 |
-- |
33 |
alan dot mckinnon at gmail dot com |