Created attachment 69114 [details] Catch OSError if kde-config is not present. I suspect this is a byproduct of switching away from popen (probably for Python 3 support), but if kde-config is not present on the system, it causes subprocess.py:1249:_execute_child:OSError: [Errno 2] No such file or directory Easy enough to fix, just try and except on OSError, and give output an empty set. I've attached a patch to do this.
To be more specific, it looks like you'd only see this if you parse a menu file with a KDELegacyDirs tag - which is probably why I haven't seen it, despite not having kde-config installed. Can you come up with a minimal example we can add to the test suite? Also, the current patch sends it into the next try block, where an IndexError is thrown and caught. Let's make the except clause just 'return' instead.
I've added a test and fixed this bug: https://github.com/takluyver/pyxdg/commit/0ad39f18cc5cde021a7484fd4ce20ac626336ecf
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.