Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Remove abundant abi_x86_32 use flags
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
Uroc327
n00b
n00b


Joined: 10 Oct 2015
Posts: 10

PostPosted: Mon May 16, 2016 4:18 pm    Post subject: Remove abundant abi_x86_32 use flags Reply with quote

Suppose I have multiple 32-bit programs installed on my system that require different packages to get built for 32bit abi.
Therefore I have the abi_x86_32 flag for every such program in my /etc/portage/package.use/multilib file.

Now if I remove one of the programs requiring a multilib system, I still have the abi_x86_32 use flags for the packages that were required to be multilib set.
Is there a way to remove those use flags optimally based on dependency checking?

I just tried to remove the /etc/portage/package.use/multilib file and do a emerge -puN @world to get emerges autounmask to tell me which packages still need to be 32-bit compat but that didn't work as expected. Instead of a complete and pretty autounmask list I got lots of slot errors where existing packages (32-bit compat) conflicted with the packages to be installed (64-bit only).
Back to top
View user's profile Send private message
gseba
n00b
n00b


Joined: 02 Aug 2003
Posts: 59
Location: Romania

PostPosted: Thu May 19, 2016 1:43 pm    Post subject: Reply with quote

So, first
Quote:
Therefore I have the abi_x86_32 flag for every such program in my /etc/portage/package.use/multilib file.


then, second
Quote:
Is there a way to remove those use flags optimally based on dependency checking?


It would seem your deeds (1) and needs (2) are irreconcilable ;)

Try again as you did first, since this is how you started, erasing abi_x86_32 flag per package in /etc/portage/package.use/multilib,
if the packages count few.

But I suppose there are as many of them to erase longer. One way to bother less, is to use [ef]query together with eix; e.g.,

Code:
eix --installed-with-use abi_x86_32


shows what packages have ABI_X86=32 set. Then obtain [direct] dependencies with

Code:

fquery dd <pkg>
equery g <pkg>


Quote:
existing packages (32-bit compat) conflicted with the packages to be installed (64-bit only)

Avoid such complications, one should not overdo oneself this way.

I have most 32bit-enabled packages in: dev-libs (14), media-libs (18), net-libs (2), sys-apps (5), sys-libs (6), virtual (7), x11-libs (28), x11-proto (20) categories; maybe among yours most are still being pulled by the other remaining programs and it will take less to clean/update/prune.
Back to top
View user's profile Send private message
chithanh
Developer
Developer


Joined: 05 Aug 2006
Posts: 2152
Location: Berlin, Germany

PostPosted: Thu May 19, 2016 3:24 pm    Post subject: Reply with quote

Unfortunately there is no depclean equivalent for USE flags, so you have to live with that for now.

What you could do is write a script that removes the flags one by one and then re-runs emerge, and if it fails keeps the flag.
Back to top
View user's profile Send private message
Syl20
Guru
Guru


Joined: 04 Aug 2005
Posts: 564
Location: France

PostPosted: Fri May 20, 2016 10:05 am    Post subject: Reply with quote

If you have some time, try to disable the abi_x86_32 flag anywhere, and let emerge say you which ones need it. It should be able to fill the package.use file for you, then you'll just have to comment the given list correctly, for future maintenance.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum