diff --git a/pixelgl/canvas.go b/pixelgl/canvas.go
index 070a382d65143f6dfeb529db06df21d028b7b1aa..7a6400ec5a5eb87aeef1370880c57a9d5112a7eb 100644
--- a/pixelgl/canvas.go
+++ b/pixelgl/canvas.go
@@ -370,7 +370,7 @@ var canvasUniformFormat = glhf.AttrFormat{
 }
 
 var canvasVertexShader = `
-#version 330 core
+#version 130
 
 in vec2 position;
 in vec4 color;
@@ -395,7 +395,7 @@ void main() {
 `
 
 var canvasFragmentShader = `
-#version 330 core
+#version 130
 
 in vec4 Color;
 in vec2 TexCoords;
diff --git a/pixelgl/window.go b/pixelgl/window.go
index afbd5f7c7ac76cfb1d9c66791705910381bd3200..76523a5ce287b8325af970a20d68dba370749f27 100644
--- a/pixelgl/window.go
+++ b/pixelgl/window.go
@@ -90,10 +90,8 @@ func NewWindow(cfg WindowConfig) (*Window, error) {
 	err := mainthread.CallErr(func() error {
 		var err error
 
-		glfw.WindowHint(glfw.ContextVersionMajor, 3)
-		glfw.WindowHint(glfw.ContextVersionMinor, 3)
-		glfw.WindowHint(glfw.OpenGLProfile, glfw.OpenGLCoreProfile)
-		glfw.WindowHint(glfw.OpenGLForwardCompatible, glfw.True)
+		glfw.WindowHint(glfw.ContextVersionMajor, 2)
+		glfw.WindowHint(glfw.ContextVersionMinor, 1)
 
 		glfw.WindowHint(glfw.Resizable, bool2int[cfg.Resizable])
 		glfw.WindowHint(glfw.Decorated, bool2int[!cfg.Undecorated])