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

Adapt to mutter 3.33 #566

Merged
merged 4 commits into from
Oct 31, 2019
Merged

Adapt to mutter 3.33 #566

merged 4 commits into from
Oct 31, 2019

Conversation

tintou
Copy link
Member

@tintou tintou commented Jun 25, 2019

It is building and basically working for Mutter 3.33.3 so let's iterate after on this

@tintou tintou force-pushed the wip/mutter-3.3x branch 2 times, most recently from 0926bde to 249fa14 Compare June 25, 2019 16:56
donadigo
donadigo previously approved these changes Jul 3, 2019
Copy link
Contributor

@donadigo donadigo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks good and compiles on 3.28. I wonder if in the future we should split up the functions by versions to different files since it's getting quite crowded there.

@worldofpeace
Copy link
Contributor

worldofpeace commented Jul 4, 2019

Tested in a VM with NixOS (master has GNOME 3.32).

Noticed that Multitasking View always had four workspaces
Screenshot from 2019-07-03 22 54 45

I'd say that's a regression from the current state.

Also trying to switch a workspace with a shortcut would only result in the limiter animation.

@Dirli
Copy link

Dirli commented Jul 5, 2019

Mutter API removed the override_preference_schema func. and now Gala is not setting its own settings. At least I ran into this when I adapted it to 3.30. for myself I decided to directly overwrite the necessary schemes, but it worked:

WindowManager.vala ( public WindowManagerGala () ):

var mutter_schema = new GLib.Settings ("org.gnome.mutter");
mutter_schema.set_boolean ("dynamic-workspaces", BehaviorSettings.get_default ().dynamic_workspaces);
mutter_schema.set_boolean ("edge-tiling", BehaviorSettings.get_default ().edge_tiling);
mutter_schema.set_boolean ("attach-modal-dialogs", AppearanceSettings.get_default ().attach_modal_dialogs);

var general_schema = new GLib.Settings ("org.gnome.desktop.wm.preferences");
general_schema.set_string ("button-layout", AppearanceSettings.get_default ().button_layout);

var interface_schema = new GLib.Settings ("org.gnome.desktop.interface");
interface_schema.set_boolean ("enable-animations", AnimationSettings.get_default ().enable_animations);

@alucryd
Copy link

alucryd commented Jul 11, 2019

It's almost building fine on archlinux, but I'm getting a bunch of these:

FAILED: src/25a6634@@gala@exe/meson-generated_Background_BackgroundContainer.c.o 
cc -Isrc/25a6634@@gala@exe -Isrc -I../gala/src -I. -I../gala/ -Ilib -I../gala/lib -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/lib/libffi-3.2.1/include -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/gio-unix-2.0 -I/usr/include/gee-0.8 -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/fribidi -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/uuid -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libdrm -I/usr/include/atk-1.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/plank -I/usr/include/libbamf3 -I/usr/lib/libbamf3/include -I/usr/include/mutter-4 -I/usr/include/gsettings-desktop-schemas -I/usr/include/mutter-4/clutter -I/usr/include/json-glib-1.0 -I/usr/include/mutter-4/cogl -I/usr/include/granite -I/usr/include/gnome-desktop-3.0 -flto -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -w -Wno-discarded-qualifiers -Wno-incompatible-pointer-types -Wno-unused -Wl,--enable-new-dtags '-DGETTEXT_PACKAGE="gala"' -DGNOME_DESKTOP_USE_UNSTABLE_API '-DDATADIR="/usr/share"' '-DPKGDATADIR="/usr/share/gala"' '-DPKGLIBDIR="/usr/lib/gala"' '-DPLUGINDIR="/usr/lib/gala/plugins"' '-DSCHEMA="org.pantheon.desktop.gala"' '-DRESOURCEPATH="/org/pantheon/desktop/gala"' -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_44 -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_44 -DGDK_VERSION_MIN_REQUIRED=GDK_VERSION_3_10 -DGDK_VERSION_MAX_ALLOWED=GDK_VERSION_3_10 -DCLUTTER_ENABLE_COMPOSITOR_API -DCLUTTER_ENABLE_EXPERIMENTAL_API -DCOGL_ENABLE_EXPERIMENTAL_API -DCOGL_ENABLE_EXPERIMENTAL_2_0_API -march=x86-64 -mtune=generic -O2 -fno-plt -D_FORTIFY_SOURCE=2 -pthread -MD -MQ 'src/25a6634@@gala@exe/meson-generated_Background_BackgroundContainer.c.o' -MF 'src/25a6634@@gala@exe/meson-generated_Background_BackgroundContainer.c.o.d' -o 'src/25a6634@@gala@exe/meson-generated_Background_BackgroundContainer.c.o' -c 'src/25a6634@@gala@exe/Background/BackgroundContainer.c'
src/25a6634@@gala@exe/Background/BackgroundContainer.c:62:22: error: field ‘parent_instance’ has incomplete type
   62 |  MetaBackgroundGroup parent_instance;
      |                      ^~~~~~~~~~~~~~~

Do you have any idea how this could happen? Note that we already have GCC 9, so it might be pickier than previous versions.

@worldofpeace
Copy link
Contributor

worldofpeace commented Jul 12, 2019

@alucryd Mutter needs this patch @tintou submitted for it to work

@alucryd
Copy link

alucryd commented Jul 12, 2019

@worldofpeace Thanks for the pointer, I'll try to get this commit backported into our mutter package.

@worldofpeace
Copy link
Contributor

Mutter API removed the override_preference_schema func. and now Gala is not setting its own settings. At least I ran into this when I adapted it to 3.30. for myself I decided to directly overwrite the necessary schemes, but it worked:

Indeed this is true in 3.30

They've replaced it with per desktop GSettings overrides

Not sure if that API is present in elementary (ref elementary/default-settings#114)
but if we can confirm that I can submit a pr.

@decathorpe
Copy link

@tintou I just noticed mutter bumped the libraries again (to -5 versions) before the final 3.34.0 release ...

@decathorpe
Copy link

I'll try to build from this branch for fedora.

FYI, mutter bumped again 😦 to libmutter-6 with 3.35.1, so I'll not be able to use this on rawhide yet, but only on fedora 31 and maybe 30 (if this works).

@decathorpe
Copy link

Aaaaaand this doesn't compile on fedora 31 / mutter 3.34.1 with these errors:

../src/WindowManager.vala:1759.4-1759.17: error: The type name `Screen' could not be found
			unowned Screen screen = get_screen ();
			^^^^^^^^^^^^^^
../src/WindowManager.vala:1780.4-1780.17: error: The type name `Screen' could not be found
			unowned Screen screen = get_screen ();
			^^^^^^^^^^^^^^
Compilation failed: 2 error(s), 0 warning(s)

@Dirli
Copy link

Dirli commented Oct 26, 2019

I'll try to build from this branch for fedora.

FYI, mutter bumped again to libmutter-6 with 3.35.1, so I'll not be able to use this on rawhide yet, but only on fedora 31 and maybe 30 (if this works).

do not dream, at the moment above mutter30 gala does not want to work, I tried to build this branch on 32 in gentoo, everything was compiled but falls with an error at startup

@decathorpe
Copy link

@tintou thanks, it now correctly finds libmutter-6 on rawhide, but now it fails with the same compilation error as on fedora 31:

../src/WindowManager.vala:1759.4-1759.17: error: The type name `Screen' could not be found
			unowned Screen screen = get_screen ();
			^^^^^^^^^^^^^^
../src/WindowManager.vala:1780.4-1780.17: error: The type name `Screen' could not be found
			unowned Screen screen = get_screen ();
			^^^^^^^^^^^^^^
Compilation failed: 2 error(s), 0 warning(s)

@decathorpe
Copy link

@tintou great, I can confirm that with your latest commit this branch compiles on both fedora 31 and rawhide. I've submitted a build for testing to my elementary-staging COPR repo.

@worldofpeace
Copy link
Contributor

@tintou Good here for NixOS as well, with mutter 3.34.1.
Some warnings though:

but it does build 👍

@decathorpe
Copy link

@tintou looks like it works. maybe. the crashes I'm seeing are probably because the wingpanel gala plugin is still getting linked with libmutter 3.28, and loading both libs into a process at the same time is probably what messes things up.

@decathorpe
Copy link

@tintou I have adapted the changes from this PR for wingpanel. I still get the fail-whale screen, but now at least wingpanel start correctly 🙁

https://github.com/decathorpe/wingpanel/tree/wip/mutter-3.3x

@decathorpe
Copy link

This is the crash backtrace from gala:

Process 1447 (gala) of user 1000 dumped core.

Stack trace of thread 1447:
#0  0x00007f395d686659 g_type_check_instance_is_fundamentally_a (libgobject-2.0.so.0)
#1  0x00007f395d6666a7 g_object_ref (libgobject-2.0.so.0)
#2  0x000055a5a5bbc3e4 gala_workspace_manager_workspace_added (gala)
#3  0x000055a5a5bbd230 gala_workspace_manager_constructor (gala)
#4  0x00007f395d66721c g_object_new_internal (libgobject-2.0.so.0)
#5  0x00007f395d669338 g_object_new_valist (libgobject-2.0.so.0)
#6  0x00007f395d66968d g_object_new (libgobject-2.0.so.0)
#7  0x000055a5a5bbcf18 gala_workspace_manager_init (gala)
#8  0x000055a5a5bb7a7d _gala_window_manager_gala_show_stage_gsource_func (gala)
#9  0x00007f395c90d37f run_all_repaint_laters (libmutter-5.so.0)
#10 0x00007f395c7658ca _clutter_run_repaint_functions (libmutter-clutter-5.so.0)
#11 0x00007f395c7672dd clutter_clock_dispatch (libmutter-clutter-5.so.0)
#12 0x00007f395d5774a0 g_main_context_dispatch (libglib-2.0.so.0)
#13 0x00007f395d577830 g_main_context_iterate.isra.0 (libglib-2.0.so.0)
#14 0x00007f395d577b23 g_main_loop_run (libglib-2.0.so.0)
#15 0x00007f395c8fe7e0 meta_run (libmutter-5.so.0)
#16 0x000055a5a5ba2886 gala_main (gala)
#17 0x00007f395c2411a3 __libc_start_main (libc.so.6)
#18 0x000055a5a5b9a17e _start (gala)

@worldofpeace
Copy link
Contributor

worldofpeace commented Oct 30, 2019

Cool @decathorpe, I'm trying that patch with debugging and a full rebuild currently.

It seems someone else dropped a patch for wingpanel with 3.30 mutter btw.

I actually cannot reproduce the issue you have there on NixOS. Perhaps this is because everything forces a full-rebuild over here for purity, so I would try rebuilding the indicators etc.

using this is nixos
worldofpeace/nixpkgs@f752dbf

Edit:

I was able to get a crash on an existing system, however there's no problems in a clean vm where I was testing in. Here's a full backtrace with symbols

@worldofpeace
Copy link
Contributor

@tintou I have adapted the changes from this PR for wingpanel. I still get the fail-whale screen, but now at least wingpanel start correctly slightly_frowning_face

https://github.com/decathorpe/wingpanel/tree/wip/mutter-3.3x

I've now done the same for elementary-greeter elementary/greeter#377.
It would be amazing if you PR'd that patch, it appears to be the most straightforward of all the ports.

Copy link
Contributor

@donadigo donadigo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The tests pass and so I think it's not worth to hold it off even longer. Let's go.

@donadigo donadigo merged commit 0f0724c into master Oct 31, 2019
@donadigo donadigo deleted the wip/mutter-3.3x branch October 31, 2019 21:22
@Dirli
Copy link

Dirli commented Nov 2, 2019

well, how can you merge it if it doesn't work? i'm testing Debian (testing), ArchLinux, Gentoo, and all fail.
you were shown the error above.

sc12

sc11

@worldofpeace
Copy link
Contributor

@Dirli It doesn't work without wingpanel also being ported to latest mutter.

@Dirli
Copy link

Dirli commented Nov 3, 2019

This is the crash backtrace from gala:

Process 1447 (gala) of user 1000 dumped core.

Stack trace of thread 1447:
#0  0x00007f395d686659 g_type_check_instance_is_fundamentally_a (libgobject-2.0.so.0)
#1  0x00007f395d6666a7 g_object_ref (libgobject-2.0.so.0)
#2  0x000055a5a5bbc3e4 gala_workspace_manager_workspace_added (gala)
#3  0x000055a5a5bbd230 gala_workspace_manager_constructor (gala)
#4  0x00007f395d66721c g_object_new_internal (libgobject-2.0.so.0)
#5  0x00007f395d669338 g_object_new_valist (libgobject-2.0.so.0)
#6  0x00007f395d66968d g_object_new (libgobject-2.0.so.0)
#7  0x000055a5a5bbcf18 gala_workspace_manager_init (gala)
#8  0x000055a5a5bb7a7d _gala_window_manager_gala_show_stage_gsource_func (gala)
#9  0x00007f395c90d37f run_all_repaint_laters (libmutter-5.so.0)
#10 0x00007f395c7658ca _clutter_run_repaint_functions (libmutter-clutter-5.so.0)
#11 0x00007f395c7672dd clutter_clock_dispatch (libmutter-clutter-5.so.0)
#12 0x00007f395d5774a0 g_main_context_dispatch (libglib-2.0.so.0)
#13 0x00007f395d577830 g_main_context_iterate.isra.0 (libglib-2.0.so.0)
#14 0x00007f395d577b23 g_main_loop_run (libglib-2.0.so.0)
#15 0x00007f395c8fe7e0 meta_run (libmutter-5.so.0)
#16 0x000055a5a5ba2886 gala_main (gala)
#17 0x00007f395c2411a3 __libc_start_main (libc.so.6)
#18 0x000055a5a5b9a17e _start (gala)

@worldofpeace here you are shown an error, and yes, I ran the wingpanel supports the latest mutter. if you look at my screenshot (second), you will see that just the wingpanel started.

@tintou
Copy link
Member Author

tintou commented Nov 3, 2019

Yeah it's not because it's building that it's completely working, it's a starting point though, we don't officially support any version different that the one we ship with elementary anyway so there is no guarantee.

@worldofpeace
Copy link
Contributor

Yeah it's not because it's building that it's completely working, it's a starting point though, we don't officially support any version different that the one we ship with elementary anyway so there is no guarantee.

Umm, don't know how I feel about this then. It seems from the build system that you allow it to be built with many different versions, and if you don't actually plan to officially support this at all then I believe you shouldn't try too. So I'm under the assumption that you must if this is the case?
I don't think it would be an unreasonable request to support the last two latest mutter releases 3.32 and 3.34 and obviously it will work with 3.28, but if there is no plan to even proclaim that, what hope is this for downstreams? Of course your platform is going to be top priority, I completely understand this, but it goes without saying how it's unfair to add support in the code but proclaim support is unwarranted. In NixOS Pantheon is part of our release, so I'd really like to know if I need to keep compat packages for mutter and g-s-d indefinitely or if porting to different versions will be worth my time?

@worldofpeace
Copy link
Contributor

Granted resources will dictate these sort of things majorly. Hopefully this wouldn't be misconstrued as contributions being unwelcome also.

@Dirli
Copy link

Dirli commented Nov 3, 2019

@tintou Maybe it makes sense to fork mutter, so as not to chase gnome, and carefully embed new features, while maintaining support. Of course this will require more costs, but perhaps these costs will be less th race for mutter api?

@tintou
Copy link
Member Author

tintou commented Nov 3, 2019

No, we have no plan to fork mutter because it's great as it is an accepts our patches, we just have to rebase every 2 weeks on our end, we're more than happy to have patch that fixes it for latest mutter but we can't even pretend that it might work on any version other than the one shipped by elementary. We don't have that manpower but again, patches are welcome.

@Tireg
Copy link
Contributor

Tireg commented Nov 4, 2019

Ok so I have been able to work some issues mentionned by @Dirli, @worldofpeace and @decathorpe.

First, thanks @tintou and everyone for your hard work upon mutter 3.3x APIs, its really easier to build everything. Their are still some issues but this is still a great improvement.

Some details about my environment:

  • OS: Gentoo
  • Gala version: upstream
  • Mutter version: 3.32.2

Required mutter patches:

Required Gala patches

Optionnal patches

Other bugs

I didn't encountered the bug reported by @decathorpe and @Dirli (#566 (comment)).
Is this with mutter 3.34 ?

Remove workspace bug

@tintou The bug seems to be within Gala.WorkspaceManager.remove_workspace function.
I'm not really a vala developper and don't understand the how and the why, but almost any calls to remove_workspace ends up with a gala crash.
I tried to run gdb against gala (with every calls to remove_workspace disabled except the one within Gala.WorkspaceManager.workspace_switched) but couldn't figure the source of the problem. I don't have any setup with debugging symbols nor source code of every component so the output were very limited.
It seems to be an index problem (raised upon mutter code but I don't know whether it's mutter or gala).

If you have any idea that may help debugging, I'd gladly use them to find the origin of this issue.

Edit

Ok after some investigation, it seems both #566 (comment) and #566 (comment) comes from the callback changes.

Maybe some vala / libgobject version is required to make this work properly ? Maybe vapi is incorrect ? Any other calls to this function and related assignments seems to work properly.
Maybe a bug within libgobject ?

Anyway, we could use the help of any experimented vala developper.

@Tireg
Copy link
Contributor

Tireg commented Nov 7, 2019

More bugs found across investigation (with this patch applied: https://gist.github.com/Tireg/2af03fa2d602d6112868eb722f2d27f1):

Adding workspace (by opening a window on the last workspace) seems to frequently crash gala. Here is one stacktrace on opening a windows on the last workspace when only 2 workspaces are opened:

nov. 07 20:45:39 gentoo systemd-coredump[2845832]: Process 2823595 (gala) of user 1001 dumped core.

Stack trace of thread 2823595:
#0  0x00007fe99eba2e75 g_type_check_instance_is_fundamentally_a (libgobject-2.0.so.0)
#1  0x00007fe99eb82e4e g_object_ref (libgobject-2.0.so.0)
#2  0x000000000025521b gala_workspace_manager_workspace_added (gala)
#3  0x00007fe99eb7df1d g_closure_invoke (libgobject-2.0.so.0)
#4  0x00007fe99eb91888 signal_emit_unlocked_R (libgobject-2.0.so.0)
#5  0x00007fe99eb9aaae g_signal_emit_valist (libgobject-2.0.so.0)
#6  0x00007fe99eb9b157 g_signal_emit (libgobject-2.0.so.0)
#7  0x00007fe99de7290f meta_workspace_manager_append_new_workspace (libmutter-4.so.0)
#8  0x000000000025492a gala_workspace_manager_window_added (gala)
#9  0x00007fe99eb7df1d g_closure_invoke (libgobject-2.0.so.0)
#10 0x00007fe99eb91888 signal_emit_unlocked_R (libgobject-2.0.so.0)
#11 0x00007fe99eb9aaae g_signal_emit_valist (libgobject-2.0.so.0)
#12 0x00007fe99eb9b157 g_signal_emit (libgobject-2.0.so.0)
#13 0x00007fe99de8899b meta_workspace_add_window (libmutter-4.so.0)
#14 0x00007fe99de7dbed set_workspace_state (libmutter-4.so.0)
#15 0x00007fe99de83f46 _meta_window_shared_new (libmutter-4.so.0)
#16 0x00007fe99de9eede meta_window_x11_new (libmutter-4.so.0)
#17 0x00007fe99de8f518 handle_other_xevent (libmutter-4.so.0)
#18 0x00007fe99de8fd6b xevent_filter (libmutter-4.so.0)
#19 0x00007fe99e21f567 n/a (libgdk-3.so.0)
#20 0x00007fe99e1e74ed gdk_display_get_event (libgdk-3.so.0)
#21 0x00007fe99e21fcf2 n/a (libgdk-3.so.0)
#22 0x00007fe99ea9858d g_main_context_dispatch (libglib-2.0.so.0)
#23 0x00007fe99ea98828 g_main_context_iterate.isra.26 (libglib-2.0.so.0)
#24 0x00007fe99ea98b32 g_main_loop_run (libglib-2.0.so.0)
#25 0x00007fe99de6e4fc meta_run (libmutter-4.so.0)
#26 0x000000000023beec gala_main (gala)
#27 0x00007fe99d7e1edb __libc_start_main (libc.so.6)
#28 0x000000000023402a _start (gala)

This is still related to https://github.com/elementary/gala/pull/566/files#diff-3c621372cc3a9bae11f71f0db0419664R125 and I don't know how to deal with this one.

This occur under some really specific circumstances:

  • Directly at first login, right after Gala proceeded to clean-up the initial workspace to delete everything except the main workspace, moving a windows to -- or creating a windows within -- the spare workspace (the one with a "+" sign) result in this bug.
  • Once a first crash occurred, create a window within the spare workspace result in the bug. This is not the case however when moving a window to the spare workspace (either through the contextual window menu -- right click on the title bar then move to right workspace -- or through the Multitasking-View)

Another bug while trying to switch from an empty workspace (which is not the last workspace) to another workspace, with and without the Multi-Tasking view (triggering the removal of the initial workspace):

Bug in window manager: Workspace does not exist to index!
==2815771== 
==2815771== Process terminating with default action of signal 6 (SIGABRT): dumping core
==2815771==    at 0x5CE7F5B: raise (in /lib64/libc-2.29.so)
==2815771==    by 0x5CD1534: abort (in /lib64/libc-2.29.so)
==2815771==    by 0x57A39F4: meta_bug (in /usr/lib64/libmutter-4.so.0.0.0)
==2815771==    by 0x57B000D: meta_workspace_index (in /usr/lib64/libmutter-4.so.0.0.0)
==2815771==    by 0x261C4E: gala_multitasking_view_update_positions (in /usr/bin/gala)
==2815771==    by 0x26232F: _gala_multitasking_view_remove_workspace_meta_workspace_manager_workspace_removed (in /usr/bin/gala)
==2815771==    by 0x4A8EF1C: g_closure_invoke (in /usr/lib64/libgobject-2.0.so.0.6000.7)
==2815771==    by 0x4AA2887: signal_emit_unlocked_R (in /usr/lib64/libgobject-2.0.so.0.6000.7)
==2815771==    by 0x4AABAAD: g_signal_emit_valist (in /usr/lib64/libgobject-2.0.so.0.6000.7)
==2815771==    by 0x4AAC156: g_signal_emit (in /usr/lib64/libgobject-2.0.so.0.6000.7)
==2815771==    by 0x579B5CE: meta_workspace_manager_remove_workspace (in /usr/lib64/libmutter-4.so.0.0.0)
==2815771==    by 0x254671: gala_workspace_manager_remove_workspace (in /usr/bin/gala)
[... REMOVED valgrind MEMORY LEAKS SUMMARY ...]
[1]    2815771 abort (core dumped)  valgrind gala --replace

This is yet another call to workspace index () function (https://github.com/elementary/gala/blob/master/src/Widgets/MultitaskingView.vala#L315), which triggers an error according to mutter.

It seems MultiTasking view still has workspace that may not be indexed within Meta.WorkspaceManager when the function is called (probably deleted from the manager).

Mutter starts by emitting the active-workspace-changed signal (https://gitlab.gnome.org/GNOME/mutter/blob/gnome-3-32/src/core/meta-workspace-manager.c#L317) which triggers an update_position according to https://github.com/elementary/gala/blob/master/src/Widgets/MultitaskingView.vala#L95 (I suppose so, can't really confirm but this is the observed behaviour) before triggering the workspace-removed signal. This cause the index () call on an already deleted workspace that can't be indexed.

Anyway, mutter 3.3x may have broken more things than expected within gala.

@Tireg Tireg mentioned this pull request Nov 8, 2019
3 tasks
@Tireg
Copy link
Contributor

Tireg commented Nov 8, 2019

Finally managed to create patch to fix it properly.

I still got some bugs with the patched version, so I opened a new issue in order to discuss each patch created and bugs that are still present.
Please, continue this discussion and report related bugs to this bug report: #634

Patches

For everyone seeking to get gala working with mutter 3.3x, I just built some AIO patches that group everything.
Here are the steps in order to get everything working properly:

Required mutter patches

Required gala patches

Optional patches

Warning: This patches requires using the above gala patch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

8 participants