There are a number of places in PyOpenGL where GL has been arrogantly assumed. In particular, error handling and the shader/VBO convenience code. The result was that you'd wind up having GL error-checking in GLES or trying to create GL VBOs under GLES. I've done a bit of refactoring to get the error-handling squared away, but the VBO code is going to need a bit of work, as currently it always imports GL and GL ARB implementations, which is not desirable for an ES context. Likely won't get that finished today, though.