added extra/mutter

This commit is contained in:
Kevin Mihelich 2017-10-17 12:24:24 +00:00
parent cc34a6e940
commit a9216bc1e3
2 changed files with 109 additions and 0 deletions

64
extra/mutter/PKGBUILD Normal file
View file

@ -0,0 +1,64 @@
# $Id$
# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
# Maintainer: Ionut Biru <ibiru@archlinux.org>
# Contributor: Michael Kanis <mkanis_at_gmx_dot_de>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - remove -flto=jobserver from CFLAGS
pkgname=mutter
pkgver=3.26.1+15+gb48c34979
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 pipewire)
makedepends=(intltool gobject-introspection git gnome-common)
groups=(gnome)
options=(!emptydirs)
_commit=b48c3497940883816416735f992aaae61396fbda # gnome-3-26
source=("git+https://git.gnome.org/browse/mutter#commit=$_commit"
startup-notification.patch)
sha256sums=('SKIP'
'5a35ca4794fc361219658d9fae24a3ca21a365f2cb1901702961ac869c759366')
pkgver() {
cd $pkgname
git describe --tags | sed 's/-/+/g'
}
prepare() {
cd $pkgname
# https://bugs.archlinux.org/task/51940
patch -Np1 -i ../startup-notification.patch
NOCONFIGURE=1 ./autogen.sh
}
build() {
cd $pkgname
# Try to get a bit more performance out of this fps-critical component
CFLAGS+=" -O3"
LDFLAGS+=" $CFLAGS"
./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 --enable-remote-desktop
#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
}

View file

@ -0,0 +1,45 @@
From 4ed430b4ef3013c96fa56cdc57b925b42d20ead9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Thu, 20 Oct 2016 18:00:04 +0200
Subject: [PATCH] gtk-shell: Work around non-working startup notifications
GNOME Shell relies on the MetaScreen::startup-sequence-changed signal,
which is tied to (lib)startup-notification and therefore X11. As a result,
when we remove the startup sequence of a wayland client, GNOME Shell will
not be notified about this until startup-notification's timeout is hit.
As a temporary stop-gap, go through XWayland even for wayland clients,
so that the signal is emitted when expected.
https://bugzilla.gnome.org/show_bug.cgi?id=768531
---
src/wayland/meta-wayland-gtk-shell.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/src/wayland/meta-wayland-gtk-shell.c b/src/wayland/meta-wayland-gtk-shell.c
index d6e249f..9d1a19e 100644
--- a/src/wayland/meta-wayland-gtk-shell.c
+++ b/src/wayland/meta-wayland-gtk-shell.c
@@ -219,11 +219,21 @@ gtk_shell_set_startup_id (struct wl_client *client,
struct wl_resource *resource,
const char *startup_id)
{
+#if 0
MetaDisplay *display;
display = meta_get_display ();
meta_startup_notification_remove_sequence (display->startup_notification,
startup_id);
+#else
+ /* HACK: MetaScreen::startup-sequence-changed is currently tied to
+ (lib)startup-notification, which means it only works on X11;
+ so for now, always go through XWayland, even for wayland clients */
+ gdk_x11_display_broadcast_startup_message (gdk_display_get_default (),
+ "remove",
+ "ID", startup_id,
+ NULL);
+#endif
}
static void
--
2.9.3