Description of problem: I just updated to Fedora 25 and tried to update my config files with "rpmconf -a". The tool detect a change in mock/default.cfg. When I try to show the diff, it fails. $ sudo rpmconf -a Configuration file '/etc/mock/default.cfg' lrwxrwxrwx. 1 root root 20 Oct 10 2014 /etc/mock/default.cfg -> fedora-20-x86_64.cfg lrwxrwxrwx. 1 root root 20 Nov 28 13:01 /etc/mock/default.cfg.rpmnew -> fedora-23-x86_64.cfg ==> Package distributor has shipped an updated version. What would you like to do about it ? Your options are: Y or I : install the package maintainer's version N or O : keep your currently-installed version D : show the differences between the versions M : merge configuration files Z : background this process to examine the situation S : skip this file The default action is to keep your current version. *** aliases (Y/I/N/O/D/M/Z/S) [default=N] ? Your choice: d Traceback (most recent call last): File "/sbin/rpmconf", line 77, in <module> main() File "/sbin/rpmconf", line 68, in main rconf.run() File "/usr/lib/python3.5/site-packages/rpmconf/rpmconf.py", line 90, in run self._handle_package(pkg_hdr) File "/usr/lib/python3.5/site-packages/rpmconf/rpmconf.py", line 289, in _handle_package tmp.format(conf_file, "rpmnew")) File "/usr/lib/python3.5/site-packages/rpmconf/rpmconf.py", line 333, in _handle_rpmnew self.show_diff(conf_file, other_file) File "/usr/lib/python3.5/site-packages/rpmconf/rpmconf.py", line 176, in show_diff pydoc.pager(err_msg + "".join(diff)) File "/usr/lib64/python3.5/difflib.py", line 1177, in unified_diff _check_types(a, b, fromfile, tofile, fromfiledate, tofiledate, lineterm) File "/usr/lib64/python3.5/difflib.py", line 1312, in _check_types raise TypeError('all arguments must be str, not: %r' % (arg,)) TypeError: all arguments must be str, not: None It turned out that both file are link and the first one points to a removed file: $ ll /etc/mock/default.cfg /etc/mock/default.cfg.rpmnew lrwxrwxrwx. 1 root root 20 Oct 10 2014 /etc/mock/default.cfg -> fedora-20-x86_64.cfg lrwxrwxrwx. 1 root root 20 Nov 28 13:01 /etc/mock/default.cfg.rpmnew -> fedora-23-x86_64.cfg Chosing to install the packager's version (Y or I), works as expected (/etc/mock/default.cfg now pointing to fedora-23-x86_64.cfg) and resolves the issue for me. Steps to Reproduce: I assume it's easy to build a couple of (conffile, conffile.rpmnew) links, one of them stale, to reproduce the issue. I just happen to encounter this situation after the upgrade to Fedora 25. Actual results: rpmconf crashes. Expected results: No crash obviously. Other than that, I'm not sure what's the best course of action in such a case. Some indication that those files are link and that one of them is stale would be nice.
Duplicate of bug #1350249
*** This bug has been marked as a duplicate of bug 1350249 ***