On Tue, 8 Sep 2020 15:29:22 +0100, Wols Lists wrote:

> > When I subsequently ran "emerge --depclean --ask" it wanted to unmerge
> > dev-lang/rust-bin.  
> 
> rust-bin was emerged with the -1 option, ie "don't stick it in world"
> option
> > 
> > I had to manually unmerge dev-lang/rust to get rid of it (which then
> > prevented --depclean from trying to unmerge rust-bin).
> >   
> So --depclean, relying on what is in world, notices that nothing has a
> dependency on rust-bin and wants to remove it.

That's because rust was also installed, and only one of them is needed to
satisfy the dependency of virtual/rust.

> What you need to do (and this is a pain, but ...) is to add rust-bin to
> the world file. There may be a --select option (opposite of deselect),
> or I'd just manually add it to the world file.
> 
> At which point, anything with the virtual rust dependency will notice
> that rust-bin is installed, and use that.
> 
> There's no way I know of to tell portage to use rust-bin rather than
> rust to satisfy the virtual and, indeed, it makes sense for rust-bin
> *not* to be the default.

There is a way, uninstall rust. virtual/rust requires only one of rust
and rust-bin, if both are installed it will take rust meaning rust-bin
gets depcleaned. If only one is installed, the virtual will take that. If
neither is install, the virtual will pull in rust.

Adding packages like this to the world file is storing up problems for
later.


-- 
Neil Bothwick

Top Oxymorons Number 22: Childproof

Attachment: pgpCnnsgigETK.pgp
Description: OpenPGP digital signature

Reply via email to