Skip to content

Instantly share code, notes, and snippets.

@DeadMetaler
Created April 26, 2017 22:04
Show Gist options
  • Star 7 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save DeadMetaler/12622bf9415c1100f2d436ffbd6778c6 to your computer and use it in GitHub Desktop.
Save DeadMetaler/12622bf9415c1100f2d436ffbd6778c6 to your computer and use it in GitHub Desktop.
pkgname=mutter
pkgver=3.24.1+2+gbb481fafd
pkgrel=1
pkgdesc="A window manager for GNOME"
url="https://git.gnome.org/browse/mutter"
arch=(i686 x86_64)
license=(GPL)
depends=(dconf gobject-introspection-runtime gsettings-desktop-schemas
libcanberra startup-notification zenity libsm gnome-desktop upower
libxkbcommon-x11 gnome-settings-daemon libgudev libinput)
makedepends=(intltool gobject-introspection git gnome-common)
groups=(gnome)
options=(!emptydirs)
_commit=eb394f19d343a119cc3a887e4b2c563ddda8c5f4 # gnome-3-24
source=("git+https://git.gnome.org/browse/mutter#commit=bb481fafdb171c83c818e0a912a6d20f0046dc0e"
revert.patch)
sha256sums=('SKIP'
'SKIP')
pkgver() {
cd $pkgname
git describe --tags | sed 's/-/+/g'
}
prepare() {
cd $pkgname
# https://bugs.archlinux.org/task/51940
patch -Np1 -i ../revert.patch
NOCONFIGURE=1 ./autogen.sh
}
build() {
cd $pkgname
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
--libexecdir=/usr/lib/$pkgname --disable-static \
--disable-schemas-compile --enable-compile-warnings=minimum \
--enable-gtk-doc --enable-egl-device
#https://bugzilla.gnome.org/show_bug.cgi?id=655517
sed -e 's/ -shared / -Wl,-O1,--as-needed\0/g' \
-i {.,cogl,clutter}/libtool
make
}
package() {
cd $pkgname
make DESTDIR="$pkgdir" install
}
--- a/src/backends/x11/meta-backend-x11.c 2017-04-18 12:12:13.502104430 +0300
+++ b/src/backends/x11/meta-backend-x11.c 2017-04-18 12:17:36.020693209 +0300
@@ -605,12 +605,6 @@
static void
meta_backend_x11_init (MetaBackendX11 *x11)
{
- /* XInitThreads() is needed to use the "threaded swap wait" functionality
- * in Cogl - see meta_renderer_x11_create_cogl_renderer(). We call it here
- * to hopefully call it before any other use of XLib.
- */
- XInitThreads();
-
clutter_x11_request_reset_on_video_memory_purge ();
/* We do X11 event retrieval ourselves */
--- a/src/backends/x11/meta-renderer-x11.c 2017-04-18 12:12:13.502104430 +0300
+++ b/src/backends/x11/meta-renderer-x11.c 2017-04-18 12:20:34.369354522 +0300
@@ -74,14 +74,6 @@
cogl_renderer_set_custom_winsys (cogl_renderer, get_x11_cogl_winsys_vtable);
cogl_xlib_renderer_set_foreign_display (cogl_renderer, xdisplay);
- /* Set up things so that if the INTEL_swap_event extension is not present,
- * but the driver is known to have good thread support, we use an extra
- * thread and call glXWaitVideoSync() in the thread. This allows idles
- * to work properly, even when Mutter is constantly redrawing new frames;
- * otherwise, without INTEL_swap_event, we'll just block in glXSwapBuffers().
- */
- cogl_xlib_renderer_set_threaded_swap_wait_enabled (cogl_renderer, TRUE);
-
return cogl_renderer;
}
Copy link

ghost commented Oct 7, 2017

Can that still be used with GNOME Shell 3.26.1? Can anyone confirm that it works?

@DeadMetaler
Copy link
Author

@Hasbreak Yes it works.

@wllf
Copy link

wllf commented Jan 1, 2018

I just tried to use the newer one on GNOME 3.26.2 and I get backends/meta-screen-cast-stream-src.c:29:10: fatal error: spa/format-builder.h: No such file or directory. Am I doing something wrong or is this broken now?

@PopBogdan97
Copy link

Is there a new version for the GNOME Shell 3.32.1?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment