Package: python3-opengl
Version: 3.1.6+dfsg-1
Severity: grave
Tags: upstream
Justification: renders package unusable
X-Debbugs-Cc: s...@highlab.com


GLUT fails to import on Wayland (using EGL), but it works if you force
it to GLX:

  $ echo $XDG_SESSION_TYPE
  wayland

  $ python3 -c 'from OpenGL.GLUT import *'
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/usr/lib/python3/dist-packages/OpenGL/GLUT/__init__.py", line 5, in 
<module>
      from OpenGL.GLUT.fonts import *
    File "/usr/lib/python3/dist-packages/OpenGL/GLUT/fonts.py", line 20, in 
<module>
      p = platform.getGLUTFontPointer( name )
    File "/usr/lib/python3/dist-packages/OpenGL/platform/baseplatform.py", line 
350, in getGLUTFontPointer
      raise NotImplementedError(
  NotImplementedError: Platform does not define a GLUT font retrieval function

  $ PYOPENGL_PLATFORM=x11 python3 -c 'from OpenGL.GLUT import *; print("no 
problem")'
  no problem


Looking at OpenGL.platform.egl[0] there is indeed no
`getGLUTFontPointer()` function, unlike in OpenGL.platform.glx[1] where
the function *does* exist.

0: <https://github.com/mcfletch/pyopengl/blob/master/OpenGL/platform/egl.py>,
1: <https://github.com/mcfletch/pyopengl/blob/master/OpenGL/platform/glx.py#L97>

The problem is not present in 3.1.5 (e.g. in Bullseye), because the
older platform detection code there does not try to detect Wayland and
so chooses GLX (which works) instead of EGL (which fails):

3.1.5:
* 
<https://github.com/mcfletch/pyopengl/blob/3e9791ffb4cd4831dae261d6bea3049ce9e78f01/OpenGL/__init__.py#L211-L218>
* 
<https://github.com/mcfletch/pyopengl/blob/3e9791ffb4cd4831dae261d6bea3049ce9e78f01/OpenGL/platform/__init__.py#L25-L26>

3.1.6:
* 
<https://github.com/mcfletch/pyopengl/blob/master/OpenGL/__init__.py#L211-L222>
* 
<https://github.com/mcfletch/pyopengl/blob/master/OpenGL/platform/__init__.py#L29-L46>

Reported to upstream here: <https://github.com/mcfletch/pyopengl/issues/89>


-- System Information:
Debian Release: bookworm/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 6.0.0-6-amd64 (SMP w/4 CPU threads; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages python3-opengl depends on:
ii  libgl1                  1.5.0-1
ii  libglu1-mesa [libglu1]  9.0.2-1.1
ii  python3                 3.10.6-3+b1

python3-opengl recommends no packages.

Versions of packages python3-opengl suggests:
pn  libgle3        <none>
ii  python3-numpy  1:1.23.5-2
ii  python3-tk     3.10.8-1

-- no debconf information

Reply via email to