Diff of fedora installation on package level?
I guess this question has two parts.
1) Is there a convenient way to search for files that are not owned by any package excluding /home, any folders inside /var deeper than 2 levels, etc? Kind of like a way of consolidating all modifications to a system outside of what yum and rpm -Va would tell you.
2) Is there an easy way to get a list of what packages would need to be installed and removed to get the system back to just the default package groups that anaconda would install? Does hawkey maybe have a way of saying "Install group xyz and remove everything that isn't a dependency of group xyz"?
The theory being that 1) would help with cleaning up after crappy binary only installers with a fair expectation of being able to make sure they didn't leave anything behind and that 2) could be used as a much better alternative to e.g. rpmreaper and have it hide default Fedora package leaves and filter down to just the package leaves that aren't present in a default install in addition to being able to easily find cyclic dependencies that rpmreaper is just helpless on.
The problem with 1) is that there are many files which do not belong to any RPM, even on a clean system, e.g.:
for f in $(find /usr/bin -name "*"); do rpm -qf $f | grep owned; done
. As for 2) - i'm not sure what a default would be: @Core? See https://ask.fedoraproject.org/en/question/43364/kickstart-in-linux-rescue-mode/ . The solution to 1) is - never install as root software which is not in Fedora repos. With some effort most software can be installed from unprivileged accounts.