I tried again, and persevered. I narrowed the issues I had with Python3 down to 3 nontrivial problem: the Python binding in Root, lastfmtagextractor and flickrsmartsync, two tools I use regularly. I’ve given up on the first, since I can’t recall using Root in the last year. My solution, if I will use it again, is to make a tiny Root script (in C) that dumps any data I need from a rootfile and go from there.
The other two tools I’ve ported myself over the past days. You may see the result here:
Dropping some functionality in flickrsmartsync allowed me to drop an unported dependency, and other than that is was mostly a matter of updating string-related issues. I took the opportunity to remove other code I wasn’t using either, and create a setup.py for easy installation. I renamed the tools out of fairness to the original authors, I don’t want to claim the reduced functionality is an update. But, for me, these tools still do exactly what I need, on Python 3.