Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MacOS builds OpenGL backend does not paint the window #3769

Closed
totaam opened this issue Feb 20, 2023 · 8 comments
Closed

MacOS builds OpenGL backend does not paint the window #3769

totaam opened this issue Feb 20, 2023 · 8 comments
Labels
bug Something isn't working macos

Comments

@totaam
Copy link
Collaborator

totaam commented Feb 20, 2023

Not sure when it broke, perhaps one of the numerous updates in Xpra-org/gtk-osx-build#25.

@totaam totaam added bug Something isn't working macos labels Feb 20, 2023
totaam added a commit that referenced this issue Feb 20, 2023
@totaam
Copy link
Collaborator Author

totaam commented Feb 20, 2023

This may well be related: something (probably GTK) prints Unable to create basic Accelerated OpenGL renderer

@totaam
Copy link
Collaborator Author

totaam commented Feb 24, 2023

Building from the 3.1.x branch results in an app bundle that does paint the window - so this must be a regression.
But none of the 4.x releases paint the window.. and for sure this used to work. How strange!

@totaam
Copy link
Collaborator Author

totaam commented Feb 28, 2023

Started bisecting at dc0e286 with fixes on top:

  • call gtk-mac-bundler with python3
  • skip sys.version check in setup.py
  • /Users/macos/gtk/inst/bin/gtk-query-immodules-2.0 was missing (symlinked from gtk-query-immodules-3.0)
  • BUILDARGS="--without-enc_ffmpeg --without-dec_avcodec2 ./make-app.sh to avoid errors due to ffmpeg v6 being installed
  • add --without-strict to BUILDARGS when building older versions
  • DO_TESTS=0 ./make-app.sh because some tests would fail..
  • PYTHON=python3 ./make-app.sh to prevent issues with gtk-mac-bundler not expecting a full path for $PYTHON

Then the builds started failing somewhere in py2app..
Was going to try ca0a121 next.

totaam added a commit that referenced this issue Feb 28, 2023
@totaam
Copy link
Collaborator Author

totaam commented Feb 28, 2023

No longer occurring after a clean full rebuild.
My guess is that this was another side effect of the libffi breakage: Xpra-org/gtk-osx-build#22

@totaam
Copy link
Collaborator Author

totaam commented Mar 1, 2023

FFS, happening again, on two different build systems: 10.14.x and 12.x

Didn't happen with the secondary-clean-user-complete-rebuild on 10.14.x - but that was running the newer, problematic libffi with disabled event listener - or was it just another 3.1.x build...

@totaam totaam reopened this Mar 1, 2023
totaam added a commit that referenced this issue Mar 2, 2023
totaam added a commit that referenced this issue Mar 2, 2023
@totaam
Copy link
Collaborator Author

totaam commented Mar 3, 2023

Same build VM, same version of gtk-osx-build but built and rebuilt at slightly different times: one works with the latest v3.1.x version and one does not. Sigh.

Using the one that does at least occasionally work, bisecting mostly by hand again - assuming that the failure isn't intermittent:

Using a modified version of xpra.platform.darwin.gl_context.py from the v3.1.x branch still segfaults.

Using the xpra/client/gl source from version 3.1.x with a 5.0 client can be done without too many changes, also does not paint!
Then merging xpra/client and xpra/platform/darwin from 3.1.x and now it does paint!

@totaam
Copy link
Collaborator Author

totaam commented Mar 5, 2023

A kinda working branch can be found in 8cc8c83.
Summary: 112 files changed, 9667 insertions(+), 8527 deletions(-)
Not exactly easy to bisect.

totaam added a commit that referenced this issue Mar 9, 2023
totaam added a commit that referenced this issue Mar 9, 2023
@totaam
Copy link
Collaborator Author

totaam commented Mar 9, 2023

I don't really understand what changed in GTK to require a completely different repaint function on MacOS.. but at least this works again.

@totaam totaam closed this as completed Mar 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working macos
Projects
None yet
Development

No branches or pull requests

1 participant