Hi Milo

I don't think that there's any sane way to get consistent checks without using flake8 (which indeed uses pep8 and others internally) from pypi. There is just too much variability in the packaged versions out there. It's doable but IMHO it's not worth the hassle. Just put the required version of flake8 in some git repo and have people install that if you want standalone "offline" things to work.

Also, flake8 has quite frequent releases that fix bugs (we've gotten our fair share of bugs fixed). If you ever venture to python3 world you really want to have the latest version of tools around.

Good luck
ZK

PS: we keep all non-Ubuntu dependencies in a git repository with a bunch of scripts that ensure we deploy exactly that for development. For production we package them to our custom PPA. https://github.com/checkbox/external-tarballs