rpm -- cleaning up conflicting stray files in %pre ineffective?

Martin Langhoff martin.langhoff at gmail.com
Tue Aug 19 06:16:32 UTC 2008


Hi,

I am dealing with cleaning up after a really misbehaved package that
instead of installing files to their actual destination, it installed
them in a /here.go.files/ tree and them symlinked them in %post . This
means that the files are in place, but "undeclared" from rpm's POV.

This symlinking only affects ~50 paths, so my strategy has been to

 - in %pre walk the list of 'bad links' paths, and remove those that are symlink
 - install the file with normal rpm means, declare it in spec, etc

However, this does not seem to work. During upgrades I get 'warning:
/path/foo created as /path/foo.rpmnew'. After the install is complete,
/path/foo does not exist however, so we are left with only
/path/foo.rpmnew.

I suspect that at install/upgrade time rpm computes the conflicts
_before_ %pre runs.

Any hints?

cheers,



m
-- 
 martin.langhoff at gmail.com
 martin at laptop.org -- School Server Architect
 - ask interesting questions
 - don't get distracted with shiny stuff - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff




More information about the devel mailing list