It would be good to have something like %config(merge) , which would compare original and new version of the file, will create a diff of them and will try to apply it if the fuzz is 0 (then we could expect that everything should work correctly). Otherwise it will follow .rpmsave/.rpmnew rules as usually. It will not help in the case of the files like /etc/passwd or /etc/group , but could help in the case of the "classic" style configuration files, where is very probable that the change will apply correctly even if user already changed the original file.