On Thursday, March 9, 2017 2:28:47 PM EST Michael Orlitzky wrote: > On 03/09/2017 02:00 PM, William L. Thomson Jr. wrote: > > Under what circumstances? > > > > ... > > > > Seems like it is not possible to generate the above permission issue. > > I can make them up all day... I cannot find the exact comment, but I recall being told before || die used along with rm -f was incorrect or something along those lines. Case in point dev-db/firebird use to have a line like rm -rf "${S}"/extern/{btyacc,editline,icu} || die But if you look at current ebuild it is now rm -r "${S}"/extern/{btyacc,editline,icu} || die The force option/argument was dropped. Why? Seems it could have remained. Which is why I commented, as I am pretty sure that has been said to me before. Essentially do not use -f with || die or something to that effect. Maybe for different reasoning. Still one of those things I never liked. Do it this way, for this reason, that is not documented. Others may digress and leads to confusion. > * VENDOR_PATH=VENDORPN="" and we try to "rm -rf /" That would likely be an incorrect ebuild and should not have been committed to tree. > * A hard drive error occurs. Likely have much greater issues than rm failing, not sure || die or the rest would work in that case. > * Bad memory crashes "rm". Same as above, if rm is crashing due to memory issues, you likely have serious issues. I doubt portage would continue on, or the system, etc. > * Somebody is running a recursive chmod on /var/tmp during emerge. That sounds like user error if doing updates etc on a system others are administrating at the same time. I would put that in the stupid category. Plus doing such would likely cause problems for other things that use that directory if not portage entirely. > * The tarball contains something you don't expect and can't delete. Why would that package be added to tree, or a developer be working with something blindly? -- William L. Thomson Jr.