diff options
Diffstat (limited to 'nixpkgs/pkgs/servers/x11/quartz-wm')
-rw-r--r-- | nixpkgs/pkgs/servers/x11/quartz-wm/default.nix | 31 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/quartz-wm/extern-patch.patch | 13 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/x11/quartz-wm/no_title_crash.patch | 25 |
3 files changed, 69 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/x11/quartz-wm/default.nix b/nixpkgs/pkgs/servers/x11/quartz-wm/default.nix new file mode 100644 index 000000000000..ccb3937ac85f --- /dev/null +++ b/nixpkgs/pkgs/servers/x11/quartz-wm/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchurl, xorg, pixman, pkgconfig, AppKit, Foundation, Xplugin, cf-private }: + +let version = "1.3.1"; +in stdenv.mkDerivation { + name = "quartz-wm-${version}"; + src = fetchurl { + url = "http://xquartz-dl.macosforge.org/src/quartz-wm-${version}.tar.xz"; + sha256 = "1j8zd3p7rhay1s3sxq6anw78k5s59mx44xpqla2ianl62346a5g9"; + }; + patches = [ + ./no_title_crash.patch + ./extern-patch.patch + ]; + buildInputs = [ + xorg.libXinerama + xorg.libAppleWM + xorg.applewmproto + xorg.libXrandr + xorg.libXext + pixman + pkgconfig + AppKit Xplugin Foundation + # Needed for CFNotificationCenterAddObserver symbols. + cf-private + ]; + meta = with stdenv.lib; { + license = licenses.apsl20; + platforms = platforms.darwin; + maintainers = with maintainers; [ matthewbauer ]; + }; +} diff --git a/nixpkgs/pkgs/servers/x11/quartz-wm/extern-patch.patch b/nixpkgs/pkgs/servers/x11/quartz-wm/extern-patch.patch new file mode 100644 index 000000000000..cd7b47fc7b05 --- /dev/null +++ b/nixpkgs/pkgs/servers/x11/quartz-wm/extern-patch.patch @@ -0,0 +1,13 @@ +diff --git a/src/x-list.h b/src/x-list.h +index bb85c02..059c88b 100644 +--- a/src/x-list.h ++++ b/src/x-list.h +@@ -39,7 +39,7 @@ + #endif + + #ifndef X_EXTERN +-# define X_EXTERN __private_extern__ ++# define X_EXTERN extern + #endif + + X_EXTERN void X_PFX (list_free_1) (x_list *node); diff --git a/nixpkgs/pkgs/servers/x11/quartz-wm/no_title_crash.patch b/nixpkgs/pkgs/servers/x11/quartz-wm/no_title_crash.patch new file mode 100644 index 000000000000..751a35072bcf --- /dev/null +++ b/nixpkgs/pkgs/servers/x11/quartz-wm/no_title_crash.patch @@ -0,0 +1,25 @@ +commit c28527b1340c51f2b492a31e49127106cebbfc5d +Author: Jeremy Huddleston <jeremyhu@apple.com> +Date: Fri Jun 1 10:38:37 2012 -0700 + + Fix a crash when minimizing windows without titles + + <rdar://problem/11575791> + + Regression-from: 21f210c923aa5d79400ce46275084f2636c92bd9 + + Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> + +diff --git a/src/x-window.m b/src/x-window.m +index a210c6a..e3b9066 100644 +--- a/src/x-window.m ++++ b/src/x-window.m +@@ -2139,7 +2139,7 @@ - (void) do_collapse + if (wid == XP_NULL_NATIVE_WINDOW_ID) + return; + +- title_c = strdup([_title UTF8String]); ++ title_c = strdup([[self title] UTF8String]); + assert(title_c); + + err = qwm_dock_minimize_item_with_title_async (wid, title_c); |