Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 313763

Summary: app-portage/gentoolkit-0.3.0-rc10: revdep-rebuild should not make use of binary packages
Product: Portage Development Reporter: Ben Cordero <bmc>
Component: ToolsAssignee: Portage Tools Team <tools-portage>
Status: RESOLVED WONTFIX    
Severity: minor    
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Ben Cordero 2010-04-07 23:39:23 UTC
As a speed boost to emerge, I use FEATURES="buildpkg" and EMERGE_DEFAULT_OPTS="--usepkg --binpkg-respect-use" in make.conf.
However, using binary packages to fix broken libs only replaces previous binaries with the new binaries with the same problems.

# revdep-rebuild -- --usepkg=n
should be used supersede the EMERGE_DEFAULT_OPT to make sure that packages are indeed rebuilt correctly.

Reproducible: Always

Steps to Reproduce:
1. Set --usepkg as a default option for emerge in make.conf
2. Run revdep-rebuild


Actual Results:  
When revdep-rebuild calls emerge, the --usepkg flag is picked up and broken packages are not rebuilt. Instead, the (broken, that's why we use revdep-rebuild) binpkg is used.

Expected Results:  
The binpkg is not used, emerge phase ignores the presence of a binpkg.

Workaround is to append '-- --usepkg=n'.
Maybe this action should be made mandatory for the emerge phase of revdep-rebuild.
Comment 1 emil karlson 2010-04-07 23:55:26 UTC
If the binpackages actually get updated revdep-rebuild with binpkgs is actually useful.

I for one utilize this feature.
 
Comment 2 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2010-04-07 23:59:48 UTC
It is left to user choice because EMERGE_DEFAULT_OPTIONS is a custom setting.
In other words, if you set default options you should know how to unset them.

I present a counter-argument, as follows: On my systems, I build the packages
on a build host. The build host's revdep-rebuild process doesn't use binpkgs
and hence it creates *good* packages. Hardcoding --usepkg=n would mean that I
wouldn't use the good binary packages. Therefore a "forced" --usepkg=n would be
bad in this setting.

My point is, you cannot guess how the end user's config is setup so you cannot
set mandatory options.
Comment 3 Zac Medico gentoo-dev 2010-04-08 01:30:28 UTC
Personally, I never use revdep-rebuild to install binary packages anymore since --rebuilt-binaries with >=portage-2.1.8 pulls in all the packages that I've rebuilt on another system for various reasons (revdep-rebuild, @preserved-rebuild, --newuse or any other reason). Maybe this scenario doesn't fit everyone, but I figured it's worth mentioning here.
Comment 4 Paul Varner (RETIRED) gentoo-dev 2010-04-08 15:07:15 UTC
This was done on purpose: See bug 289599.  Unfortunately, this is one of those decisions that will not leave everybody happy.  The consensus is that the user has set EMERGE_DEFAULT_OPTS and knows what they are doing, so we should honor it.