2020-07-13, Bruce Richardson: > In the absense of a "proper" solution, is the simplest option to > change the shebangs to all be python3, but leave the python2 > compatibility in place, and add the warnings for anyone running it > explicitly using python2?
I have found a hacky[1] but somewhat not too ugly way to dynamically use any available python interpreter. Basically, the scripts shebangs become: #!/bin/sh # shell script hack to dynamically use any available python interpreter ''':' if command -pv python3 >/dev/null 2>&1; then exec python3 "$0" "$@" else exec python2 "$0" "$@" fi ''' # real python code starts here This hack obviously would remain only for the time where we still have python 2 support and can be removed after 20.08 is released. What do you think? [1] https://unix.stackexchange.com/a/66242 -- Robin