you need to declare the varyings in the fragment shader too.

I'll make something that displays the compile errors soon.