I have collision-protect enabled. In case of a collision the emerge process stops. It would be great, if emerge would ask what to do.
This relates in a way to http://bugs.gentoo.org/show_bug.cgi?id=140594.
This is mostly a dupe... even more bad suggestion though, emerge is non-interactive by design.
*** This bug has been marked as a duplicate of bug 140594 ***
Created attachment 107128 [details, diff]
patch enabling interactivity in case of collision, new FEATURE
The patch implements a new portage feature (collision-protect-ask). If set alongside with collision-protect it enables interactivity, otherwise portage's behaviour is unchanged.
The user can choose to overwrite files, to run qfile on colliding files and to abort the merge process.
It adds some more output, even if not set:
- telling that it could be set
- checking for qfile and telling that its useful
Please consider the patch.
Sorry for not attaching the patch earlier. I did not see a way to just submit a patch.
May I ask why do we need two separate bugs for essentially the same thing? Why don't you just attach the patch to the other bug if you really think that letting emerge sit there indefinitely waiting for user input is a good idea...
(In reply to comment #5)
> May I ask why do we need two separate bugs for essentially the same thing?
topic of 140594: emerge should not block in case of a collision
topic of 162288: emerge should block, but not abort
> Why don't you just attach the patch to the other bug if you really think that
> letting emerge sit there indefinitely waiting for user input is a good idea...
I did the following:
1. was unsatisfied what portage is doing
2. checked bugzilla about my wish
3. wrote a patch so portage does what i want
4. opened a new request (as i think it differs from the soft-collision request)
5. attached the patch to the request
Can you please tell me what exactly I did wrong?
I would like to make a commit about emerge baling out on file collsion error. i was emergeing a kernel and it balled out on me with file colision from alsa-firmware this to me is realy unacceptible(since it take a long time to build the kernel and some other package as well qt for example) and IMHO should be cuncider a bug. The only way i now of getting the kernel to build after that unmerge the conflicting package (in my case alsafirmware) and start the whole emerge build proccess all hopeing that you did not miss anything
I think a probable solution to this thou, without makeing portage ask for input. buy add an comand to emerge like --continue package. when it bail out it should not git rid of the source but continue where is last had an error. you could that say --contiune (kernel.ebuild or what ever) and have it finish with out recompiling just do make instead of make clean. This has many addvatages beside helping with file colusion it could also fix thing when it break in the middle of a compile you could then countinue and see if it had any more error for example even thou i would have protage remind you it is best to re-emerge the package after you got all the problem with the emerge procces fixed).
You mean like `FEATURES=-collision-protect ebuild /path/to/ebuild qmerge; emerge --clean` ?
These days we have 'protect-owned' instead of 'collision-protect' which should cause less problems. At least I haven't heard complains about file collision behavior for a long time.
As others pointed out, interactivity at such a late stage in the process is not desirable. Closing as WONTFIX.