Yes but I take the example of the SabayonLinux Installer Upgrade code (
http://svn.sabayonlinux.org). If I'd have a portage option to let it to force blockers removal I won't have to remove every package that is not available on the current live system. It's hard to understand, I make an example:
Live Upgrade system collects the packages on the LiveCD (A) and the packages on the currently installed Gentoo system (B).
The current behavior is:
- first of all to remove the packages that are installed in (B) but not in (A) to avoid system inconsistencies.
- then add the packages that are not installed in (B) from (A).
- then update the packages that are installed in (B) and available in (A) with a different version.
- then check the USE file in /var/db/pkcat/pkgname/ to see if the a package in (A) has been updated keeping the same version (maybe that from a release to another, you add the support for something using new USE flags)
- in the end, check for broken libraries (using a small shell script and "equery belongs").
So, the thing that I'd like to fix, is the removal of the packages that are installed in (B) but not in (A). For example, I install my favorite game "foobar" that does not conflict with anything but gets removed anyway just because it is not installed in (A). With at least a basic capability of handling blockers, I can happily rewrite this part without any dirty hack.