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