[Bug Report] Ubuntu (Linux) GLAttributes exception
Bug Report
Current Behaviour:
When I click on 3d Editor it gives me an error, when I click ok, I get another, then it crashes.
Expected behavior:
When I click it, I expect it to take me to the 3d Editor and not crash
Steps To Reproduce:
- open the python venv
- run amulet map editor
- open a world
- click 3d Editor
- recieve errors
Environment:
- OS: Windows | OSX | linux
- Minecraft Platform: Java | Bedrock | Education Edition
- Minecraft Version:
- Amulet Version:
- OS: Ubuntu 22.04
- Minecraft Java
- Minecraft 1.12.2 (It is modded but I forgot the forge version)
- Amulet 0.10.36
Additional context
Installed via pip with python 3.10.12 I have not tested with a vanilla world as I never play vanilla nor have I on the machine im currently using nor do I even have the normal launcher installed (I use multimc)
Attachments
Screenshots
Here is a video instead
https://github.com/user-attachments/assets/081e1fcf-9eb9-4827-8133-14e7207d6e6d
Worlds
Its too big to add and I don't think people would like some random google drive link
The console
its not on the template but I think it would help
INFO - PyMCTranslate Version 298 INFO - Loading level /home/littletimmy52/.local/share/PrismLauncher/instances/Stellar Archives 3 v1.0.2/minecraft/saves/PlayTesting INFO - Loading level /home/littletimmy52/.local/share/PrismLauncher/instances/Stellar Archives 3 v1.0.2/minecraft/saves/PlayTesting INFO - No OpenGL_accelerate module loaded: No module named 'OpenGL_accelerate' INFO - No OpenGL_accelerate module loaded: No module named 'OpenGL_accelerate' CRITICAL - NotImplementedError
The above exception was the direct cause of the following exception:
Traceback (most recent call last): File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/api/framework/pages/world_page.py", line 178, in _enable_page self.GetPage(page).enable() File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/programs/edit/edit.py", line 69, in enable self._canvas = EditCanvas(self, self._world) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/programs/edit/api/canvas/edit_canvas.py", line 150, in init super().init(parent, world) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/programs/edit/api/canvas/base_edit_canvas.py", line 63, in init super().init(parent) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/api/opengl/canvas/event_canvas.py", line 15, in init super().init(parent) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/api/opengl/canvas/canvas.py", line 41, in init display_attributes = GLAttributes() SystemError: <class 'wx._glcanvas.GLAttributes'> returned a result with an exception set
CRITICAL - NotImplementedError
The above exception was the direct cause of the following exception:
Traceback (most recent call last): File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/api/framework/pages/world_page.py", line 178, in _enable_page self.GetPage(page).enable() File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/programs/edit/edit.py", line 69, in enable self._canvas = EditCanvas(self, self._world) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/programs/edit/api/canvas/edit_canvas.py", line 150, in init super().init(parent, world) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/programs/edit/api/canvas/base_edit_canvas.py", line 63, in init super().init(parent) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/api/opengl/canvas/event_canvas.py", line 15, in init super().init(parent) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/api/opengl/canvas/canvas.py", line 41, in init display_attributes = GLAttributes() SystemError: <class 'wx._glcanvas.GLAttributes'> returned a result with an exception set
CRITICAL - NotImplementedError
The above exception was the direct cause of the following exception:
Traceback (most recent call last): File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/api/framework/pages/world_page.py", line 178, in _enable_page self.GetPage(page).enable() File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/programs/edit/edit.py", line 69, in enable self._canvas = EditCanvas(self, self._world) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/programs/edit/api/canvas/edit_canvas.py", line 150, in init super().init(parent, world) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/programs/edit/api/canvas/base_edit_canvas.py", line 63, in init super().init(parent) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/api/opengl/canvas/event_canvas.py", line 15, in init super().init(parent) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/api/opengl/canvas/canvas.py", line 41, in init display_attributes = GLAttributes() SystemError: <class 'wx._glcanvas.GLAttributes'> returned a result with an exception set
During handling of the above exception, another exception occurred:
NotImplementedError
The above exception was the direct cause of the following exception:
Traceback (most recent call last): File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/api/framework/pages/world_page.py", line 178, in _enable_page self.GetPage(page).enable() File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/programs/edit/edit.py", line 69, in enable self._canvas = EditCanvas(self, self._world) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/programs/edit/api/canvas/edit_canvas.py", line 150, in init super().init(parent, world) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/programs/edit/api/canvas/base_edit_canvas.py", line 63, in init super().init(parent) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/api/opengl/canvas/event_canvas.py", line 15, in init super().init(parent) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/api/opengl/canvas/canvas.py", line 41, in init display_attributes = GLAttributes() SystemError: <class 'wx._glcanvas.GLAttributes'> returned a result with an exception set
CRITICAL - NotImplementedError
The above exception was the direct cause of the following exception:
Traceback (most recent call last): File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/api/framework/pages/world_page.py", line 178, in _enable_page self.GetPage(page).enable() File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/programs/edit/edit.py", line 69, in enable self._canvas = EditCanvas(self, self._world) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/programs/edit/api/canvas/edit_canvas.py", line 150, in init super().init(parent, world) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/programs/edit/api/canvas/base_edit_canvas.py", line 63, in init super().init(parent) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/api/opengl/canvas/event_canvas.py", line 15, in init super().init(parent) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/api/opengl/canvas/canvas.py", line 41, in init display_attributes = GLAttributes() SystemError: <class 'wx._glcanvas.GLAttributes'> returned a result with an exception set
During handling of the above exception, another exception occurred:
NotImplementedError
The above exception was the direct cause of the following exception:
Traceback (most recent call last): File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/api/framework/pages/world_page.py", line 178, in _enable_page self.GetPage(page).enable() File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/programs/edit/edit.py", line 69, in enable self._canvas = EditCanvas(self, self._world) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/programs/edit/api/canvas/edit_canvas.py", line 150, in init super().init(parent, world) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/programs/edit/api/canvas/base_edit_canvas.py", line 63, in init super().init(parent) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/api/opengl/canvas/event_canvas.py", line 15, in init super().init(parent) File "/home/littletimmy52/amuletmc/lib/python3.10/site-packages/amulet_map_editor/api/opengl/canvas/canvas.py", line 41, in init display_attributes = GLAttributes() SystemError: <class 'wx._glcanvas.GLAttributes'> returned a result with an exception set
(main.py:78657): GLib-GObject-WARNING **: 17:52:35.632: ../../../gobject/gsignal.c:2765: instance '0x55b59a6456e0' has no handler with id '2609' Segmentation fault (core dumped)
here is whats installed with pip on the venv
Try installing PyOpenGL-accelerate in your VENV?
pip3 install PyOpenGL-accelerate
Check out #449 Please close this if that solves your problem.
Try installing PyOpenGL-accelerate in your VENV?
pip3 install PyOpenGL-accelerate
didnt do anything same errors
Check out #449 Please close this if that solves your problem.
I may have looked wrong but I did some of the suggestions here with no improovements
pip3 uninstall wxPython
sudo apt-get install freeglut3-dev
pip3 install wxPython --no-cache-dir
on linux wxpython needs to be compiled and if the opengl libraries do not exist it will still compile but won't have opengl support.
I did that again the commands and it still does the same thing
Can you share the whole install output log
pip3 uninstall wxPython sudo apt-get install freeglut3-dev pip3 install wxPython --no-cache-dir
I ran those commands and had no success. But after trying a couple of times installing PyOpenGL (which was successful) and PyOpenGL-accelerate (which I still trying to install) on Python 3.12.3, I was able to open my map with flickering screen like #127. Sometimes the Amulet was crashing with no error message, after I restored the world directory from my backup, everything went ok. My guess is that LittleTimmy's map is corrupted.
After going back through previous tickets, and the docs, I've come to realize that PyOpenGL-Accelerate was removed by the Amulet Team and the docs no longer say to include it because it caused problems, and indeed, for the Flatpak version I'm working on, Amulet runs fine (not counting the irritating texture dilemma I'm working through) without including it, so I shouldn't have suggested you install it. Sorry!
After going back through previous tickets, and the docs, I've come to realize that
PyOpenGL-Acceleratewas removed by the Amulet Team and the docs no longer say to include it because it caused problems, and indeed, for the Flatpak version I'm working on, Amulet runs fine (not counting the irritating texture dilemma I'm working through) without including it, so I shouldn't have suggested you install it. Sorry!
Sorry bro. But your flatpak package is not opening here. It only opens the terminal and closes after that.
PyOpenGL-Accelerate is completely optional. It contains some compiled implementations of some features in the base library to make it a bit faster. I don't know how many of those features we actually use and it hasn't been updated in a while causing lots of people to have issues installing it so I disabled it.
After going back through previous tickets, and the docs, I've come to realize that
PyOpenGL-Acceleratewas removed by the Amulet Team and the docs no longer say to include it because it caused problems, and indeed, for the Flatpak version I'm working on, Amulet runs fine (not counting the irritating texture dilemma I'm working through) without including it, so I shouldn't have suggested you install it. Sorry!Sorry bro. But your flatpak package is not opening here. It only opens the terminal and closes after that.
Ubuntu disables Flatpak by default because Canonical wants you to use the Snap Store (which is proprietary and closed source) instead.
To use Flatpaks on Ubuntu, you have to manually enable Flathub access.
EDIT: I've changed my README to reflect this.
when I get the chance ill try that later, the flatpack thing.
In testing 0.10.37 while preparing the Flatpak update, I've noticed that Amulet will often crash three or four times after clicking "3D Editor" once a world is loaded. However, I have noticed that if I give it on average two minutes before clicking, it will usually load just fine. I don't know why there's a time-delay, and there's not always an error message in the terminal when it quits - acting almost like it was simply a user-initiated shut down. I've tested seven different Worlds all saved in different Minecraft versions, but the results were all fairly consistent on both my EndeavourOS test rig (Arch based) and my primary Mint build rig (Ubuntu/Debian based). This happens with both the native PIP install and with the Flatpak version, on both systems.
If you want a debug log, let me know and I'll attach it.
I just give up at this point, the issue with a minecraft world i needed this for to resolve i have since resolved on my brothers windows pc. maybe one day ubuntu will have a minecraft editor that just works, thats the only downside to not using the hot garbage of windows, some things just dont work till some big brain fixes it, and i am not this big brain. ima leave the issue open though in case.