From 4f9ef9bbfb90a4a510a5fdcb4425004a137379e3 Mon Sep 17 00:00:00 2001
From: Jude Taylor <me@jude.bio>
Date: Mon, 28 Sep 2015 14:45:45 -0700
Subject: [PATCH] give xquartz impure deps to make it build

---
 pkgs/servers/x11/quartz-wm/default.nix | 7 ++-----
 pkgs/servers/x11/xorg/overrides.nix    | 5 +++--
 pkgs/servers/x11/xquartz/default.nix   | 7 -------
 pkgs/top-level/all-packages.nix        | 3 ---
 4 files changed, 5 insertions(+), 17 deletions(-)

diff --git a/pkgs/servers/x11/quartz-wm/default.nix b/pkgs/servers/x11/quartz-wm/default.nix
index ff125067305a..de30fc2a5840 100644
--- a/pkgs/servers/x11/quartz-wm/default.nix
+++ b/pkgs/servers/x11/quartz-wm/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, xorg, pixman, pkgconfig, Foundation, libobjc, Xplugin, CF }:
+{ stdenv, lib, fetchurl, xorg, pixman, pkgconfig }:
 
 let version = "1.3.1";
 in stdenv.mkDerivation {
@@ -19,11 +19,8 @@ in stdenv.mkDerivation {
     xorg.libXext
     pixman
     pkgconfig
-    CF
-    Foundation
-    libobjc
-    Xplugin
   ];
+  NIX_CFLAGS_COMPILE = "-F/System/Library/Frameworks -I/usr/include";
   NIX_LDFLAGS = stdenv.lib.optional stdenv.isDarwin
     "/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation";
   meta = with lib; {
diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix
index f5d5bf679ec6..a3b786c014ed 100644
--- a/pkgs/servers/x11/xorg/overrides.nix
+++ b/pkgs/servers/x11/xorg/overrides.nix
@@ -326,8 +326,6 @@ in
       } else {
         buildInputs = commonBuildInputs ++ [
           args.bootstrap_cmds args.automake args.autoconf
-          args.CF args.apple_sdk.libs.Xplugin args.apple_sdk.frameworks.Foundation
-          args.libobjc args.apple_sdk.frameworks.Cocoa
         ];
         propagatedBuildInputs = commonPropagatedBuildInputs ++ [
           libAppleWM applewmproto
@@ -355,6 +353,9 @@ in
           "--with-bundle-id-prefix=org.nixos.xquartz"
           "--with-sha1=CommonCrypto"
         ];
+        __impureHostDeps = ["/System/Library" "/usr"];
+        NIX_CFLAGS_COMPILE = "-F/System/Library/Frameworks -I/usr/include";
+        NIX_CFLAGS_LINK = "-L/usr/lib";
         preConfigure = ''
           ensureDir $out/Applications
           export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -Wno-error"
diff --git a/pkgs/servers/x11/xquartz/default.nix b/pkgs/servers/x11/xquartz/default.nix
index 8b5b3155a172..178e7a59d831 100644
--- a/pkgs/servers/x11/xquartz/default.nix
+++ b/pkgs/servers/x11/xquartz/default.nix
@@ -146,13 +146,6 @@ in stdenv.mkDerivation {
       --replace "@STARTX@"          "$defaultStartX" \
       --replace "@FONTCONFIG_FILE@" "$fontsConfPath"
 
-    rm $out/lib/X11/xinit/privileged_startx.d/*
-    cp ${./privileged} $out/lib/X11/xinit/privileged_startx.d/privileged
-    substituteInPlace $out/lib/X11/xinit/privileged_startx.d/privileged \
-      --replace "@PATH@"            "$out/bin:${env}" \
-      --replace "@FONTCONFIG_FILE@" "$fontsConfPath" \
-      --replace "@FONT_CACHE@"      "$out/bin/font_cache"
-
     cp ${./font_cache} $out/bin/font_cache
     substituteInPlace $out/bin/font_cache \
       --replace "@PATH@"            "$out/bin:${env}" \
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 818dfee3392e..cb84a14d26e6 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -9252,9 +9252,6 @@ let
   xquartz = callPackage ../servers/x11/xquartz { };
   quartz-wm = callPackage ../servers/x11/quartz-wm {
     stdenv = clangStdenv;
-    inherit (darwin.apple_sdk.frameworks) Foundation;
-    inherit (darwin.apple_sdk.libs) Xplugin;
-    inherit (darwin) libobjc CF;
   };
 
   xorg = recurseIntoAttrs (lib.callPackagesWith pkgs ../servers/x11/xorg/default.nix {