diff options
author | Norbert Pfeiler | 2015-10-09 18:30:58 +0200 |
---|---|---|
committer | Norbert Pfeiler | 2015-10-09 18:30:58 +0200 |
commit | 6785aeb4594629244678c0f6e076f76c00a5cc41 (patch) | |
tree | 29a0681e3f6a566bbad1190dfd8a052afe7b7b9f | |
parent | f6268e594af50796934bdc45b05968ae4c24c31b (diff) | |
download | aur-6785aeb4594629244678c0f6e076f76c00a5cc41.tar.gz |
update to 3.18.0, use module detection patch from bugreport
-rw-r--r-- | .SRCINFO | 18 | ||||
-rw-r--r-- | PKGBUILD | 28 | ||||
-rw-r--r-- | catalyst-comment.patch | 16 | ||||
-rw-r--r-- | catalyst-workaround.patch | 73 |
4 files changed, 99 insertions, 36 deletions
@@ -1,6 +1,6 @@ pkgbase = mutter-catalyst pkgdesc = A window manager for GNOME with patch for catalyst compatibility - pkgver = 3.16.2 + pkgver = 3.18.0 pkgrel = 1 url = http://www.gnome.org install = mutter-catalyst.install @@ -9,11 +9,11 @@ pkgbase = mutter-catalyst groups = gnome license = GPL makedepends = intltool - makedepends = gnome-doc-utils makedepends = libxkbcommon-x11 + makedepends = gobject-introspection depends = clutter depends = dconf - depends = gobject-introspection + depends = gobject-introspection-runtime depends = gsettings-desktop-schemas depends = libcanberra depends = startup-notification @@ -22,15 +22,17 @@ pkgbase = mutter-catalyst depends = gnome-desktop depends = upower depends = libxkbcommon-x11 - provides = mutter=3.16.2 + depends = gnome-settings-daemon + depends = libgudev + provides = mutter=3.18.0 conflicts = mutter-wayland conflicts = mutter replaces = mutter-wayland options = !emptydirs - source = http://ftp.gnome.org/pub/gnome/sources/mutter/3.16/mutter-3.16.2.tar.xz - source = catalyst-comment.patch - sha256sums = 4a2b752f0b3aa59f50563190222623324f5154acbb6bf174213f5849e77d0763 - sha256sums = fe058744aadcf87cb92a9268beddbb1a501631e02b335a58c593b36c8b47d7d9 + source = http://ftp.gnome.org/pub/gnome/sources/mutter/3.18/mutter-3.18.0.tar.xz + source = catalyst-workaround.patch + sha256sums = 9fb287976b9c65f0a2aca09d0e2c4c2748d3d2cfa5f38921dbeafe4cd1d541b1 + sha256sums = cf6c54cf23dc5898ab105d8bde2d60fd3f6671b319ffef12b0584544bfb23655 pkgname = mutter-catalyst @@ -1,16 +1,18 @@ # Maintainer: Norbert Pfeiler <norbert.pfeiler ät gmail.com> # Contributor: Christian Assfalg <ch.assfalg_at_gmx_dot_de> +# Patch by Jan Holthuis # Also Maintainers and Contributors of the ›mutter‹ package, this package is based on -pkgname=mutter-catalyst -pkgver=3.16.2 +_realname=mutter +pkgname=$_realname-catalyst +pkgver=3.18.0 pkgrel=1 pkgdesc="A window manager for GNOME with patch for catalyst compatibility" arch=(i686 x86_64) license=('GPL') depends=('clutter' 'dconf' - 'gobject-introspection' + 'gobject-introspection-runtime' 'gsettings-desktop-schemas' 'libcanberra' 'startup-notification' @@ -19,31 +21,33 @@ depends=('clutter' 'gnome-desktop' 'upower' 'libxkbcommon-x11' + 'gnome-settings-daemon' + 'libgudev' ) makedepends=('intltool' - 'gnome-doc-utils' 'libxkbcommon-x11' + 'gobject-introspection' ) conflicts=('mutter-wayland' 'mutter' ) replaces=('mutter-wayland') provides=("mutter=${pkgver}") -url='http://www.gnome.org' +url="http://www.gnome.org" groups=('gnome') options=('!emptydirs') install=mutter-catalyst.install -source=("http://ftp.gnome.org/pub/gnome/sources/mutter/${pkgver:0:4}/mutter-$pkgver.tar.xz" - 'catalyst-comment.patch' ) -sha256sums=('4a2b752f0b3aa59f50563190222623324f5154acbb6bf174213f5849e77d0763' - 'fe058744aadcf87cb92a9268beddbb1a501631e02b335a58c593b36c8b47d7d9') +source=("http://ftp.gnome.org/pub/gnome/sources/$_realname/${pkgver:0:4}/$_realname-$pkgver.tar.xz" + 'catalyst-workaround.patch' ) +sha256sums=('9fb287976b9c65f0a2aca09d0e2c4c2748d3d2cfa5f38921dbeafe4cd1d541b1' + 'cf6c54cf23dc5898ab105d8bde2d60fd3f6671b319ffef12b0584544bfb23655') build() { - cd "mutter-$pkgver" + cd "$_realname-$pkgver" #https://bugzilla.gnome.org/show_bug.cgi?id=741581 echo "Commenting out call to function with XRRChangeOutputProperty to fix issue with catalyst" - patch -p1 < ../catalyst-comment.patch + patch -p1 < ../catalyst-workaround.patch echo "Patch applied" ./configure --prefix=/usr --sysconfdir=/etc \ @@ -58,6 +62,6 @@ build() { } package() { - cd "mutter-$pkgver" + cd "$_realname-$pkgver" make DESTDIR="$pkgdir" install } diff --git a/catalyst-comment.patch b/catalyst-comment.patch deleted file mode 100644 index aef3a9a42a24..000000000000 --- a/catalyst-comment.patch +++ /dev/null @@ -1,16 +0,0 @@ ---- mutter-3.14.3/src/backends/x11/meta-monitor-manager-xrandr.c 2014-11-12 18:27:07.000000000 +0100 -+++ mutter-3.14.3/src/backends/x11/meta-monitor-manager-xrandr.c 2014-12-17 18:11:05.906206113 +0100 -@@ -933,11 +933,11 @@ - DefaultRootWindow (manager_xrandr->xdisplay), - (XID)output_info->output->winsys_id); - } -- -+/* - output_set_presentation_xrandr (manager_xrandr, - output_info->output, - output_info->is_presentation); -- -+*/ - output->is_primary = output_info->is_primary; - output->is_presentation = output_info->is_presentation; - } diff --git a/catalyst-workaround.patch b/catalyst-workaround.patch new file mode 100644 index 000000000000..c63ac1bc53f3 --- /dev/null +++ b/catalyst-workaround.patch @@ -0,0 +1,73 @@ +@@ -, +, @@ + src/backends/x11/meta-monitor-manager-xrandr.c | 47 ++++++++++++++++++++++++-- + 1 file changed, 44 insertions(+), 3 deletions(-) +--- a/src/backends/x11/meta-monitor-manager-xrandr.c ++++ a/src/backends/x11/meta-monitor-manager-xrandr.c +@@ -1017,6 +1017,41 @@ output_set_underscanning_xrandr (MetaMonitorManagerXrandr *manager_xrandr, + } + } + ++static int ++output_get_fglrx_kernel_module_loaded() ++{ ++ /* Checks if fglrx module has been loaded by parsing /proc/modules. ++ * Returns 1 if the module was found (and thus has been loaded), 0 if the ++ * module was not found and -1 if /proc/modules couldn't be opened. ++ */ ++ ++ int retval = 0; // defaults to not found ++ ++ FILE* fp; ++ char line[256]; ++ ++ fp = fopen("/proc/modules", "r"); ++ if (!fp) ++ { ++ retval = -1; ++ } ++ else ++ { ++ while (fgets(line, sizeof(line), fp) != NULL) ++ { ++ char *entry = strtok(line, " \n"); ++ ++ if (strcmp(entry, "fglrx") == 0) ++ { ++ retval = 1; ++ break; ++ } ++ } ++ fclose(fp); ++ } ++ return retval; ++} ++ + static void + meta_monitor_manager_xrandr_apply_configuration (MetaMonitorManager *manager, + MetaCRTCInfo **crtcs, +@@ -1193,6 +1228,8 @@ meta_monitor_manager_xrandr_apply_configuration (MetaMonitorManager *manager, + } + } + ++ int fglrx_kernel_module_loaded = output_get_fglrx_kernel_module_loaded(); ++ + for (i = 0; i < n_outputs; i++) + { + MetaOutputInfo *output_info = outputs[i]; +@@ -1205,9 +1242,13 @@ meta_monitor_manager_xrandr_apply_configuration (MetaMonitorManager *manager, + (XID)output_info->output->winsys_id); + } + +- output_set_presentation_xrandr (manager_xrandr, +- output_info->output, +- output_info->is_presentation); ++ /* Don't call output_set_presentation_xrandr if fglrx/catalyst is used, because that causes a crash. */ ++ if (fglrx_kernel_module_loaded != 1) ++ { ++ output_set_presentation_xrandr (manager_xrandr, ++ output_info->output, ++ output_info->is_presentation); ++ } + + if (output_get_supports_underscanning_xrandr (manager_xrandr, output_info->output)) + output_set_underscanning_xrandr (manager_xrandr, |