From 69a5e300a6a2625d5caaaf277d02a0f215f45f3d Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 17:37:13 -0500
Subject: [PATCH 01/43] bs1770gain: disable clang error

Uuse -Wno-error to make clang happy.
---
 pkgs/applications/audio/bs1770gain/default.nix | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/pkgs/applications/audio/bs1770gain/default.nix b/pkgs/applications/audio/bs1770gain/default.nix
index db6843f4535..862f5263695 100644
--- a/pkgs/applications/audio/bs1770gain/default.nix
+++ b/pkgs/applications/audio/bs1770gain/default.nix
@@ -11,6 +11,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ ffmpeg sox ];
 
+  NIX_CFLAGS_COMPILE = "-Wno-error";
+
   meta = {
     description = "A audio/video loudness scanner implementing ITU-R BS.1770";
     license = stdenv.lib.licenses.gpl2Plus;

From 554b06522e43d1164174629f8c769faf51a0bddf Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:14:20 -0500
Subject: [PATCH 02/43] cd-discid: fix darwin build

---
 pkgs/applications/audio/cd-discid/default.nix | 6 +++++-
 pkgs/top-level/all-packages.nix               | 4 +++-
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/pkgs/applications/audio/cd-discid/default.nix b/pkgs/applications/audio/cd-discid/default.nix
index 5286362b50f..2cf9849e351 100644
--- a/pkgs/applications/audio/cd-discid/default.nix
+++ b/pkgs/applications/audio/cd-discid/default.nix
@@ -1,4 +1,5 @@
-{ fetchurl, stdenv }:
+{ fetchurl, stdenv
+, IOKit ? null }:
 
 stdenv.mkDerivation rec {
   name = "cd-discid-${version}";
@@ -11,6 +12,9 @@ stdenv.mkDerivation rec {
 
   installFlags = "PREFIX=$(out) INSTALL=install";
 
+  buildInputs = []
+    ++ stdenv.lib.optional stdenv.isDarwin [ IOKit ];
+
   meta = with stdenv.lib; {
     homepage = http://linukz.org/cd-discid.shtml;
     license = licenses.gpl2Plus;
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index b79c331d812..57872d6156f 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -12487,7 +12487,9 @@ in
 
   cbc = callPackage ../applications/science/math/cbc { };
 
-  cddiscid = callPackage ../applications/audio/cd-discid { };
+  cddiscid = callPackage ../applications/audio/cd-discid {
+    inherit (darwin) IOKit;
+  };
 
   cdparanoia = self.cdparanoiaIII;
 

From 1705b314d55e56580c0c9ee88bb77aafba8813f0 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:14:45 -0500
Subject: [PATCH 03/43] geany: fix darwin build

---
 pkgs/applications/editors/geany/default.nix | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/pkgs/applications/editors/geany/default.nix b/pkgs/applications/editors/geany/default.nix
index cd93a4ed0e8..961c7ba0461 100644
--- a/pkgs/applications/editors/geany/default.nix
+++ b/pkgs/applications/editors/geany/default.nix
@@ -12,6 +12,8 @@ stdenv.mkDerivation rec {
     sha256 = "0nha21rbdhl10vdpaq8d5v5fszvggl1xar555pvrnvm2y443ffpp";
   };
 
+  NIX_LDFLAGS = if stdenv.isDarwin then "-lintl" else null;
+
   buildInputs = [ gtk2 which pkgconfig intltool file ];
 
   doCheck = true;

From 9610fc55efb97eef2316edaee886beadb822144e Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:15:05 -0500
Subject: [PATCH 04/43] gpicview: fix darwin build

---
 pkgs/applications/graphics/gpicview/default.nix | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/pkgs/applications/graphics/gpicview/default.nix b/pkgs/applications/graphics/gpicview/default.nix
index 4d01bbd126b..7e11c9dea3a 100644
--- a/pkgs/applications/graphics/gpicview/default.nix
+++ b/pkgs/applications/graphics/gpicview/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, intltool, pkgconfig, gtk2 }:
+{ stdenv, fetchurl, intltool, pkgconfig, gtk2, fetchpatch }:
 
 stdenv.mkDerivation {
   name = "gpicview-0.2.4";
@@ -8,6 +8,13 @@ stdenv.mkDerivation {
     sha256 = "1svcy1c8bgk0pl12yhyv16h2fl52x5vzzcv57z6qdcv5czgvgglr";
   };
 
+  patches = [
+    (fetchpatch {
+      url = "https://raw.githubusercontent.com/nonas/debian-clang/master/buildlogs/gpicview/gpicview-0.2.4/debian/patches/clang_FTBFS_Wreturn-type.patch";
+      sha256 = "02dm966bplnv10knpdx7rlpjipk884156ggd9ij05zhza0jl8xcs";
+    })
+  ];
+
   meta = with stdenv.lib; {
     description = "A simple and fast image viewer for X";
     homepage    = http://lxde.sourceforge.net/gpicview/;

From fa4b1ee68a23a61867a11b1d08b096d57a92cfb7 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:15:37 -0500
Subject: [PATCH 05/43] erlangR16: fix darwin build

---
 pkgs/development/interpreters/erlang/R16.nix | 6 ++++--
 pkgs/top-level/all-packages.nix              | 4 +++-
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/interpreters/erlang/R16.nix b/pkgs/development/interpreters/erlang/R16.nix
index 7323fafaf97..c49b479d6f5 100644
--- a/pkgs/development/interpreters/erlang/R16.nix
+++ b/pkgs/development/interpreters/erlang/R16.nix
@@ -2,7 +2,8 @@
 , gnused, gawk, makeWrapper
 , odbcSupport ? false, unixODBC ? null
 , wxSupport ? false, mesa ? null, wxGTK ? null, xorg ? null
-, enableDebugInfo ? false }:
+, enableDebugInfo ? false
+, Carbon ? null, Cocoa ? null }:
 
 assert wxSupport -> mesa != null && wxGTK != null && xorg != null;
 assert odbcSupport -> unixODBC != null;
@@ -23,7 +24,8 @@ stdenv.mkDerivation rec {
   buildInputs =
     [ perl gnum4 ncurses openssl makeWrapper
     ] ++ optional wxSupport [ mesa wxGTK xorg.libX11 ]
-      ++ optional odbcSupport [ unixODBC ];
+      ++ optional odbcSupport [ unixODBC ]
+      ++ optional stdenv.isDarwin [ Carbon Cocoa ];
 
   patchPhase = '' sed -i "s@/bin/rm@rm@" lib/odbc/configure erts/configure '';
 
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 57872d6156f..b273674794b 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -5666,7 +5666,9 @@ in
 
   clooj = callPackage ../development/interpreters/clojure/clooj.nix { };
 
-  erlangR16 = callPackage ../development/interpreters/erlang/R16.nix { };
+  erlangR16 = callPackage ../development/interpreters/erlang/R16.nix {
+    inherit (darwin.apple_sdk.frameworks) Carbon Cocoa;
+  };
   erlangR16_odbc = callPackage ../development/interpreters/erlang/R16.nix { odbcSupport = true; };
   erlangR17 = callPackage ../development/interpreters/erlang/R17.nix {
     inherit (darwin.apple_sdk.frameworks) Carbon Cocoa;

From 58eb27f5ed9c3f0b9c3b76a73a18efc413e61239 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:15:59 -0500
Subject: [PATCH 06/43] boringssl: fix darwin build

Add -Wno-error to make clang happy. Seems impossible to keep both gcc and clang happy.
---
 pkgs/development/libraries/boringssl/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/development/libraries/boringssl/default.nix b/pkgs/development/libraries/boringssl/default.nix
index 778c368f0f1..3a537821298 100644
--- a/pkgs/development/libraries/boringssl/default.nix
+++ b/pkgs/development/libraries/boringssl/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ cmake perl go ];
   enableParallelBuilding = true;
-  NIX_CFLAGS_COMPILE = "-Wno-error=cpp";
+  NIX_CFLAGS_COMPILE = "-Wno-error";
 
   installPhase = ''
     mkdir -p $out/bin $out/include $out/lib

From 7afc589d7d4560180cbb8f9b037b452c4f84db8b Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:16:25 -0500
Subject: [PATCH 07/43] dclxvi: fix darwin build

---
 pkgs/development/libraries/dclxvi/default.nix | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/pkgs/development/libraries/dclxvi/default.nix b/pkgs/development/libraries/dclxvi/default.nix
index 6207f3d2038..f7d7eee91ed 100644
--- a/pkgs/development/libraries/dclxvi/default.nix
+++ b/pkgs/development/libraries/dclxvi/default.nix
@@ -12,6 +12,14 @@ stdenv.mkDerivation {
 
   buildFlags = [ "libdclxvipairing.so" ];
 
+  patchPhase = ''
+    substituteInPlace Makefile \
+      --replace "gcc" "cc"
+  '' + stdenv.lib.optionalString stdenv.isDarwin ''
+    substituteInPlace Makefile \
+      --replace "-soname=libdclxvipairing.so" "-install_name,libdclxvipairing.so"
+  '';
+
   installPhase = ''
     mkdir -p $out/{include,lib}
     find . -name \*.h -exec cp {} $out/include \;

From 410fa4b427635d0c1cc916c9cd40e1d8edea2368 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:17:15 -0500
Subject: [PATCH 08/43] fox: fix darwin build

---
 pkgs/development/libraries/fox/default.nix | 6 ++++--
 pkgs/top-level/all-packages.nix            | 1 +
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/fox/default.nix b/pkgs/development/libraries/fox/default.nix
index 2d44444ab40..78c8b864529 100644
--- a/pkgs/development/libraries/fox/default.nix
+++ b/pkgs/development/libraries/fox/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, xlibsWrapper, libpng, libjpeg, libtiff, zlib, bzip2, libXcursor, libXrandr, libXft }:
+{ stdenv, fetchurl, xlibsWrapper, libpng, libjpeg, libtiff, zlib, bzip2, libXcursor, libXrandr, libXft
+, CoreServices ? null }:
 
 let
   version = "1.7.9";
@@ -12,7 +13,8 @@ stdenv.mkDerivation rec {
     sha256 = "1jb9368xsin3ppdf6979n5s7in3s9klbxqbwcp0z8misjixl7nzg";
   };
 
-  buildInputs = [ libpng xlibsWrapper libjpeg libtiff zlib bzip2 libXcursor libXrandr libXft ];
+  buildInputs = [ libpng xlibsWrapper libjpeg libtiff zlib bzip2 libXcursor libXrandr libXft ]
+    ++ stdenv.lib.optionals stdenv.isDarwin [ CoreServices ];
 
   doCheck = true;
 
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index b273674794b..b2e8a1c5ac5 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1615,6 +1615,7 @@ in
 
   fox = callPackage ../development/libraries/fox/default.nix {
     libpng = libpng12;
+    inherit (darwin.apple_sdk.frameworks) CoreServices;
   };
 
   fox_1_6 = callPackage ../development/libraries/fox/fox-1.6.nix { };

From 5ba016503413770f571627366f557373ca31aacc Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:17:48 -0500
Subject: [PATCH 09/43] gegl: fix darwin build

---
 pkgs/development/libraries/gegl/default.nix | 6 ++++--
 pkgs/top-level/all-packages.nix             | 4 +++-
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/libraries/gegl/default.nix b/pkgs/development/libraries/gegl/default.nix
index 70b731f56dd..b54b3a38e76 100644
--- a/pkgs/development/libraries/gegl/default.nix
+++ b/pkgs/development/libraries/gegl/default.nix
@@ -1,5 +1,6 @@
 { stdenv, fetchurl, pkgconfig, glib, babl, libpng, cairo, libjpeg
-, librsvg, pango, gtk, bzip2, intltool }:
+, librsvg, pango, gtk, bzip2, intltool
+, OpenGL ? null }:
 
 stdenv.mkDerivation rec {
   name = "gegl-0.2.0";
@@ -21,7 +22,8 @@ stdenv.mkDerivation rec {
 
   NIX_LDFLAGS = if stdenv.isDarwin then "-lintl" else null;
 
-  buildInputs = [ babl libpng cairo libjpeg librsvg pango gtk bzip2 intltool ];
+  buildInputs = [ babl libpng cairo libjpeg librsvg pango gtk bzip2 intltool ]
+    ++ stdenv.lib.optional stdenv.isDarwin OpenGL;
 
   nativeBuildInputs = [ pkgconfig ];
 
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index b2e8a1c5ac5..c0b6cba4958 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -7298,7 +7298,9 @@ in
 
   gephi = callPackage ../applications/science/misc/gephi { };
 
-  gegl = callPackage ../development/libraries/gegl { };
+  gegl = callPackage ../development/libraries/gegl {
+    inherit (darwin.apple_sdk.frameworks) OpenGL;
+  };
 
   gegl_0_3 = callPackage ../development/libraries/gegl/3.0.nix { };
 

From 0edb35ad78a3c656dce09573f9c0eff11fe0c466 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:18:06 -0500
Subject: [PATCH 10/43] glew110: fix darwin build

---
 pkgs/development/libraries/glew/1.10.nix | 4 +++-
 pkgs/top-level/all-packages.nix          | 4 +++-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/glew/1.10.nix b/pkgs/development/libraries/glew/1.10.nix
index 8f153baf6cd..9d5ded5be15 100644
--- a/pkgs/development/libraries/glew/1.10.nix
+++ b/pkgs/development/libraries/glew/1.10.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, mesa_glu, x11, libXmu, libXi }:
+{ stdenv, fetchurl, mesa_glu, x11, libXmu, libXi
+, AGL ? null }:
 
 with stdenv.lib;
 
@@ -12,6 +13,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ x11 libXmu libXi ];
   propagatedNativeBuildInputs = [ mesa_glu ]; # GL/glew.h includes GL/glu.h
+  buildInputs = [] ++ optionals stdenv.isDarwin [ AGL ];
 
   patchPhase = ''
     sed -i 's|lib64|lib|' config/Makefile.linux
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index c0b6cba4958..ce4d10b74ac 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -7353,7 +7353,9 @@ in
   gle = callPackage ../development/libraries/gle { };
 
   glew = callPackage ../development/libraries/glew { };
-  glew110 = callPackage ../development/libraries/glew/1.10.nix { };
+  glew110 = callPackage ../development/libraries/glew/1.10.nix {
+    inherit (darwin.apple_sdk.frameworks) AGL;
+  };
 
   glfw = self.glfw3;
   glfw2 = callPackage ../development/libraries/glfw/2.x.nix { };

From ad61000697405f8c13b6e4a0f453904786111660 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:18:24 -0500
Subject: [PATCH 11/43] cccc: fix darwin build

---
 pkgs/development/tools/analysis/cccc/default.nix | 1 +
 1 file changed, 1 insertion(+)

diff --git a/pkgs/development/tools/analysis/cccc/default.nix b/pkgs/development/tools/analysis/cccc/default.nix
index c672c7964e7..ea7f6d4f590 100644
--- a/pkgs/development/tools/analysis/cccc/default.nix
+++ b/pkgs/development/tools/analysis/cccc/default.nix
@@ -16,6 +16,7 @@ stdenv.mkDerivation {
     substituteInPlace install/install.mak --replace /usr/local/bin $out/bin
     substituteInPlace install/install.mak --replace MKDIR=mkdir "MKDIR=mkdir -p"
   '';
+  buildFlags = [ "CCC=c++" "LD=c++" ];
 
   meta = {
     description = "C and C++ Code Counter";

From 9ab5b14d5698c2cbbe1471475892e19d9085ebf9 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:18:38 -0500
Subject: [PATCH 12/43] genromfs: fix darwin build

---
 pkgs/tools/filesystems/genromfs/default.nix | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/pkgs/tools/filesystems/genromfs/default.nix b/pkgs/tools/filesystems/genromfs/default.nix
index db1968fccdc..7bf771803c6 100644
--- a/pkgs/tools/filesystems/genromfs/default.nix
+++ b/pkgs/tools/filesystems/genromfs/default.nix
@@ -10,7 +10,9 @@ stdenv.mkDerivation rec {
   };
 
   postPatch = ''
-    substituteInPlace Makefile --replace "prefix = /usr" "prefix = $out"
+    substituteInPlace Makefile \
+      --replace "prefix = /usr" "prefix = $out" \
+      --replace "gcc" "cc"
   '';
 
   meta = with stdenv.lib; {

From f8f4da3561685281a8d740d939dbcc9bfa91032c Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:18:57 -0500
Subject: [PATCH 13/43] dumbtorrent: fix darwin build

---
 pkgs/tools/misc/dumptorrent/default.nix | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/pkgs/tools/misc/dumptorrent/default.nix b/pkgs/tools/misc/dumptorrent/default.nix
index 60a2ed29bbf..892287fa2d7 100644
--- a/pkgs/tools/misc/dumptorrent/default.nix
+++ b/pkgs/tools/misc/dumptorrent/default.nix
@@ -9,6 +9,11 @@ stdenv.mkDerivation rec {
       sha256 = "073h03bmpfdy15qh37lvppayld2747i4acpyk0pm5nf2raiak0zm";
     };
 
+    patchPhase = ''
+      substituteInPlace Makefile \
+        --replace "gcc" "cc"
+    '';
+
     installPhase = ''
       mkdir -p $out/bin
       cp ./dumptorrent $out/bin

From 07ca8027d9aa937fc6bac9036cf864dc49f570ff Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:19:25 -0500
Subject: [PATCH 14/43] fontforge-gtk: fix darwin build

---
 pkgs/tools/misc/fontforge/default.nix | 4 +++-
 pkgs/top-level/all-packages.nix       | 1 +
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/pkgs/tools/misc/fontforge/default.nix b/pkgs/tools/misc/fontforge/default.nix
index 0d6cfb19c34..c04b9255afc 100644
--- a/pkgs/tools/misc/fontforge/default.nix
+++ b/pkgs/tools/misc/fontforge/default.nix
@@ -3,6 +3,7 @@
 , python, freetype, zlib, glib, libungif, libpng, libjpeg, libtiff, libxml2, pango
 , withGTK ? false, gtk2
 , withPython ? true
+, Carbon ? null, Cocoa ? null
 }:
 
 stdenv.mkDerivation rec {
@@ -30,7 +31,8 @@ stdenv.mkDerivation rec {
     python freetype zlib glib libungif libpng libjpeg libtiff libxml2
     pango
   ]
-    ++ lib.optionals withGTK [ gtk2 ];
+    ++ lib.optionals withGTK [ gtk2 ]
+    ++ lib.optionals (withGTK && stdenv.isDarwin) [ Carbon Cocoa ];
 
   configureFlags =
     lib.optionals (!withPython) [ "--disable-python-scripting" "--disable-python-extension" ]
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index ce4d10b74ac..cdc685d2cf7 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1603,6 +1603,7 @@ in
   fontforge = lowPrio (callPackage ../tools/misc/fontforge { });
   fontforge-gtk = callPackage ../tools/misc/fontforge {
     withGTK = true;
+    inherit (darwin.apple_sdk.frameworks) Carbon Cocoa;
   };
 
   fontmatrix = callPackage ../applications/graphics/fontmatrix {};

From 738b0a39d7e831be8d45fa4cf8583dd6beb40ee3 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:20:01 -0500
Subject: [PATCH 15/43] dog: fix darwin build

---
 pkgs/tools/system/dog/default.nix | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/pkgs/tools/system/dog/default.nix b/pkgs/tools/system/dog/default.nix
index d05e2986204..a48c2678aa6 100644
--- a/pkgs/tools/system/dog/default.nix
+++ b/pkgs/tools/system/dog/default.nix
@@ -8,6 +8,11 @@ stdenv.mkDerivation rec {
     sha256 = "3ef25907ec5d1dfb0df94c9388c020b593fbe162d7aaa9bd08f35d2a125af056";
   };
 
+  patchPhase = ''
+    substituteInPlace Makefile \
+      --replace "gcc" "cc"
+  '';
+
   installPhase = ''
     mkdir -p $out/bin
     mkdir -p $out/man/man1

From 51085c0681b275baae561868407ef3fe080d8263 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:20:19 -0500
Subject: [PATCH 16/43] hardlink: fix darwin build

---
 pkgs/tools/system/hardlink/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/tools/system/hardlink/default.nix b/pkgs/tools/system/hardlink/default.nix
index c34d81f6353..f464b7e9320 100644
--- a/pkgs/tools/system/hardlink/default.nix
+++ b/pkgs/tools/system/hardlink/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
 
   installPhase = ''
     mkdir -p $out/bin $out/share/man/man1
-    gcc -O2 hardlink.c -o $out/bin/hardlink
+    cc -O2 hardlink.c -o $out/bin/hardlink
     mv hardlink.1 $out/share/man/man1/hardlink.1
   '';
 

From fe923c915d228b9207526033009ab7f1eda67d54 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:21:13 -0500
Subject: [PATCH 17/43] gkrellm: fix darwin build

---
 pkgs/applications/misc/gkrellm/default.nix | 6 ++++--
 pkgs/top-level/all-packages.nix            | 4 +++-
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/pkgs/applications/misc/gkrellm/default.nix b/pkgs/applications/misc/gkrellm/default.nix
index ac8f876ad3f..23b705058df 100644
--- a/pkgs/applications/misc/gkrellm/default.nix
+++ b/pkgs/applications/misc/gkrellm/default.nix
@@ -1,4 +1,5 @@
-{ fetchurl, stdenv, gettext, pkgconfig, glib, gtk, libX11, libSM, libICE }:
+{ fetchurl, stdenv, gettext, pkgconfig, glib, gtk, libX11, libSM, libICE
+, IOKit ? null }:
 
 stdenv.mkDerivation rec {
   name = "gkrellm-2.3.5";
@@ -7,7 +8,8 @@ stdenv.mkDerivation rec {
     sha256 = "12rc6zaa7kb60b9744lbrlfkxxfniprm6x0mispv63h4kh75navh";
   };
 
-  buildInputs = [gettext pkgconfig glib gtk libX11 libSM libICE];
+  buildInputs = [gettext pkgconfig glib gtk libX11 libSM libICE]
+    ++ stdenv.lib.optionals stdenv.isDarwin [ IOKit ];
 
   # Makefiles are patched to fix references to `/usr/X11R6' and to add
   # `-lX11' to make sure libX11's store path is in the RPATH.
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index cdc685d2cf7..05b5c5ce628 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -13318,7 +13318,9 @@ in
 
   svox = callPackage ../applications/audio/svox { };
 
-  gkrellm = callPackage ../applications/misc/gkrellm { };
+  gkrellm = callPackage ../applications/misc/gkrellm {
+    inherit (darwin) IOKit;
+  };
 
   gmu = callPackage ../applications/audio/gmu { };
 

From ae75531b3ccb6faee0016bfef40aaf7cc6003ecc Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:21:55 -0500
Subject: [PATCH 18/43] i3-block-gaps: disable darwin

---
 pkgs/applications/window-managers/i3/blocks-gaps.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/applications/window-managers/i3/blocks-gaps.nix b/pkgs/applications/window-managers/i3/blocks-gaps.nix
index 36cf593a890..a80dbd38ec8 100644
--- a/pkgs/applications/window-managers/i3/blocks-gaps.nix
+++ b/pkgs/applications/window-managers/i3/blocks-gaps.nix
@@ -19,6 +19,6 @@ stdenv.mkDerivation rec {
     homepage = https://github.com/Airblader/i3blocks-gaps;
     license = licenses.gpl3;
     maintainers = [ "carlsverre" ];
-    platforms = platforms.all;
+    platforms = platforms.linux;
   };
 }

From 122bac8f26bf265c57c877c56bf43137d32bf824 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:31:04 -0500
Subject: [PATCH 19/43] libfreefare: fix darwin build

---
 pkgs/development/libraries/libfreefare/default.nix | 5 +++--
 pkgs/top-level/all-packages.nix                    | 4 +++-
 2 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/libraries/libfreefare/default.nix b/pkgs/development/libraries/libfreefare/default.nix
index 8c485fef47c..291f20a5db2 100644
--- a/pkgs/development/libraries/libfreefare/default.nix
+++ b/pkgs/development/libraries/libfreefare/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, pkgconfig, libnfc, openssl }:
+{ stdenv, fetchurl, pkgconfig, libnfc, openssl
+, libobjc ? null }:
 
 stdenv.mkDerivation rec {
   name = "libfreefare-${version}";
@@ -9,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "0r5wfvwgf35lb1v65wavnwz2wlfyfdims6a9xpslf4lsm4a1v8xz";
   };
 
-  buildInputs = [ pkgconfig libnfc openssl ];
+  buildInputs = [ pkgconfig libnfc openssl ] ++ stdenv.lib.optional stdenv.isDarwin libobjc;
 
   meta = with stdenv.lib; {
     description = "The libfreefare project aims to provide a convenient API for MIFARE card manipulations";
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 05b5c5ce628..d0c6aefe54b 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -8103,7 +8103,9 @@ in
 
   libffi = callPackage ../development/libraries/libffi { };
 
-  libfreefare = callPackage ../development/libraries/libfreefare { };
+  libfreefare = callPackage ../development/libraries/libfreefare {
+    inherit (darwin) libobjc;
+  };
 
   libftdi = callPackage ../development/libraries/libftdi { };
 

From 483a480ceaf92736043223237441ace081dde4f1 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:38:00 -0500
Subject: [PATCH 20/43] libomxil-bellagio: disable on Darwin

I can't find any information on this for Darwin. It appears to be
Linux-only.
---
 pkgs/development/libraries/libomxil-bellagio/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/development/libraries/libomxil-bellagio/default.nix b/pkgs/development/libraries/libomxil-bellagio/default.nix
index 24e46c0802b..6328494c17e 100644
--- a/pkgs/development/libraries/libomxil-bellagio/default.nix
+++ b/pkgs/development/libraries/libomxil-bellagio/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     homepage = http://sourceforge.net/projects/omxil/;
     description = "An opensource implementation of the Khronos OpenMAX Integration Layer API to access multimedia components";
     license = licenses.lgpl21;
-    platforms = platforms.all;
+    platforms = platforms.linux;
     maintainers = with maintainers; [ wkennington ];
   };
 }

From de914d019007e9aaafb2eda8b5307f5e1339e664 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:42:13 -0500
Subject: [PATCH 21/43] libsecret: fix darwin build

darwin needs the -lintl flag
---
 pkgs/development/libraries/libsecret/default.nix | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/pkgs/development/libraries/libsecret/default.nix b/pkgs/development/libraries/libsecret/default.nix
index bb8d971d6d4..8495650f02c 100644
--- a/pkgs/development/libraries/libsecret/default.nix
+++ b/pkgs/development/libraries/libsecret/default.nix
@@ -11,6 +11,8 @@ stdenv.mkDerivation rec {
     sha256 = "1cychxc3ff8fp857iikw0n2s13s2mhw2dn1mr632f7w3sn6vvrww";
   };
 
+  NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-lintl";
+
   propagatedBuildInputs = [ glib ];
   nativeBuildInputs = [ pkgconfig intltool libxslt docbook_xsl ];
   buildInputs = [ libgcrypt gobjectIntrospection ];

From 3182e52fdde1f94d3d9b5b457147260c995cf169 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:42:42 -0500
Subject: [PATCH 22/43] libstatgrab: fix darwin build

Darwin needs IOKit to work.
---
 pkgs/development/libraries/libstatgrab/default.nix | 5 ++++-
 pkgs/top-level/all-packages.nix                    | 4 +++-
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/libstatgrab/default.nix b/pkgs/development/libraries/libstatgrab/default.nix
index 8ffb8f8bde9..036bb806f68 100644
--- a/pkgs/development/libraries/libstatgrab/default.nix
+++ b/pkgs/development/libraries/libstatgrab/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchurl
+, IOKit ? null }:
 
 stdenv.mkDerivation rec {
   name = "libstatgrab-0.91";
@@ -8,6 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "1azinx2yzs442ycwq6p15skl3mscmqj7fd5hq7fckhjp92735s83";
   };
 
+  buildInputs = [] ++ stdenv.lib.optional stdenv.isDarwin IOKit;
+
   meta = with stdenv.lib; {
     homepage = http://www.i-scream.org/libstatgrab/;
     description = "A library that provides cross platforms access to statistics about the running system";
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index d0c6aefe54b..16f4053051b 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -8489,7 +8489,9 @@ in
 
   libspatialite = callPackage ../development/libraries/libspatialite { };
 
-  libstatgrab = callPackage ../development/libraries/libstatgrab { };
+  libstatgrab = callPackage ../development/libraries/libstatgrab {
+    inherit (darwin.apple_sdk.frameworks) IOKit;
+  };
 
   libsvm = callPackage ../development/libraries/libsvm { };
 

From 0acdc51d0e928efb81b6a50597e7bc35ad0c1762 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 22:51:32 -0500
Subject: [PATCH 23/43] pcsclite: fix darwin build

needs IOKit
---
 pkgs/tools/security/pcsclite/default.nix | 6 ++++--
 pkgs/top-level/all-packages.nix          | 4 +++-
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/pkgs/tools/security/pcsclite/default.nix b/pkgs/tools/security/pcsclite/default.nix
index 509a8a12092..8116d0dfe9f 100644
--- a/pkgs/tools/security/pcsclite/default.nix
+++ b/pkgs/tools/security/pcsclite/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, pkgconfig, udev, dbus_libs, perl, python2 }:
+{ stdenv, fetchurl, pkgconfig, udev, dbus_libs, perl, python2
+, IOKit ? null }:
 
 stdenv.mkDerivation rec {
   name = "pcsclite-${version}";
@@ -26,7 +27,8 @@ stdenv.mkDerivation rec {
   '';
 
   nativeBuildInputs = [ pkgconfig perl python2 ];
-  buildInputs = stdenv.lib.optionals stdenv.isLinux [ udev dbus_libs ];
+  buildInputs = stdenv.lib.optionals stdenv.isLinux [ udev dbus_libs ]
+             ++ stdenv.lib.optionals stdenv.isDarwin [ IOKit ];
 
   meta = with stdenv.lib; {
     description = "Middleware to access a smart card using SCard API (PC/SC)";
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 16f4053051b..cebcea53caa 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -3013,7 +3013,9 @@ in
 
   pciutils = callPackage ../tools/system/pciutils { };
 
-  pcsclite = callPackage ../tools/security/pcsclite { };
+  pcsclite = callPackage ../tools/security/pcsclite {
+    inherit (darwin.apple_sdk.frameworks) IOKit;
+  };
 
   pcsctools = callPackage ../tools/security/pcsctools {
     inherit (perlPackages) pcscperl Glib Gtk2 Pango;

From fc9508d3878b5df71006c6992e59303292f1eb12 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 23:02:00 -0500
Subject: [PATCH 24/43] mg: fix darwin build

-Wno-error is needed
---
 pkgs/applications/editors/mg/default.nix | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/pkgs/applications/editors/mg/default.nix b/pkgs/applications/editors/mg/default.nix
index 45a527c7484..95a6205125b 100644
--- a/pkgs/applications/editors/mg/default.nix
+++ b/pkgs/applications/editors/mg/default.nix
@@ -12,6 +12,9 @@ stdenv.mkDerivation rec {
   patches = [ ./configure.patch ];
   patchFlags = "-p0";
 
+  NIX_CFLAGS_COMPILE = "-Wno-error";
+  buildFlags = [ "CC=cc" ];
+
   installPhase = ''
     mkdir -p $out/bin
     cp mg $out/bin

From 0c6a79a2d0df96a952b6ec317ee391fe38cba389 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 23:04:48 -0500
Subject: [PATCH 25/43] mosquitto: use cmake for darwin

Makefile says this:

Please compile using CMake on Mac OS X.
---
 pkgs/servers/mqtt/mosquitto/default.nix | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/pkgs/servers/mqtt/mosquitto/default.nix b/pkgs/servers/mqtt/mosquitto/default.nix
index 0dacaf4cfe4..be7947a03d6 100644
--- a/pkgs/servers/mqtt/mosquitto/default.nix
+++ b/pkgs/servers/mqtt/mosquitto/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, openssl, libuuid }:
+{ stdenv, fetchurl, openssl, libuuid, cmake }:
 
 stdenv.mkDerivation rec {
   pname = "mosquitto";
@@ -11,7 +11,8 @@ stdenv.mkDerivation rec {
     sha256 = "1imw5ps0cqda41b574k8hgz9gdr8yy58f76fg8gw14pdnvf3l7sr";
   };
 
-  buildInputs = [ openssl libuuid ];
+  buildInputs = [ openssl libuuid ]
+    ++ stdenv.lib.optional stdenv.isDarwin cmake;
 
   makeFlags = [
     "DESTDIR=$(out)"

From b9d9cea3c7926d406854efeffba85d90c0dc868e Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 23:19:51 -0500
Subject: [PATCH 26/43] nload: disable darwin build

doesn't work on Darwin
---
 pkgs/applications/networking/nload/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/applications/networking/nload/default.nix b/pkgs/applications/networking/nload/default.nix
index f3faa0128bb..879461c8acd 100644
--- a/pkgs/applications/networking/nload/default.nix
+++ b/pkgs/applications/networking/nload/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = http://www.roland-riegel.de/nload/index.html;
     license = stdenv.lib.licenses.gpl2;
-    platforms = stdenv.lib.platforms.unix;
+    platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.devhell ];
   };
 }

From a79ff78ec42149964218e4196a34660cabfa7e15 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 23:24:44 -0500
Subject: [PATCH 27/43] nspr: fix darwin build

- needs CoreServices
---
 pkgs/development/libraries/nspr/default.nix | 5 ++++-
 pkgs/top-level/all-packages.nix             | 4 +++-
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/nspr/default.nix b/pkgs/development/libraries/nspr/default.nix
index 23f7ffb0ce8..e8ba9c7ec54 100644
--- a/pkgs/development/libraries/nspr/default.nix
+++ b/pkgs/development/libraries/nspr/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchurl
+, CoreServices ? null }:
 
 let version = "4.12"; in
 
@@ -27,6 +28,8 @@ stdenv.mkDerivation {
     moveToOutput share "$dev" # just aclocal
   '';
 
+  buildInputs = [] ++ stdenv.lib.optionals stdenv.isDarwin [ CoreServices ];
+
   enableParallelBuilding = true;
 
   meta = {
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index cebcea53caa..cd813e3dcef 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -8868,7 +8868,9 @@ in
 
   non = callPackage ../applications/audio/non { };
 
-  nspr = callPackage ../development/libraries/nspr { };
+  nspr = callPackage ../development/libraries/nspr {
+    inherit (darwin.apple_sdk.frameworks) CoreServices;
+  };
 
   nss = lowPrio (callPackage ../development/libraries/nss { });
   nssTools = nss.tools;

From 2ecb5ddea71817ce87838a699ea23d15eafe1c11 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Thu, 11 Aug 2016 23:27:00 -0500
Subject: [PATCH 28/43] odt2txt: fix darwin build

- needs libiconv in ld flags on clang
---
 pkgs/tools/text/odt2txt/default.nix | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/pkgs/tools/text/odt2txt/default.nix b/pkgs/tools/text/odt2txt/default.nix
index b7134bf8e47..85f0f24b387 100644
--- a/pkgs/tools/text/odt2txt/default.nix
+++ b/pkgs/tools/text/odt2txt/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, zlib }:
+{ stdenv, fetchurl, zlib, libiconv }:
 
 stdenv.mkDerivation rec {
   name = "odt2txt-0.4";
@@ -10,7 +10,9 @@ stdenv.mkDerivation rec {
 
   configurePhase="export makeFlags=\"DESTDIR=$out\"";
 
-  buildInputs = [ zlib ];
+  buildInputs = [ zlib libiconv ];
+
+  NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-liconv";
 
   meta = {
     description = "Simple .odt to .txt converter";

From 1138b5dc7e121ddd2e51fe4c613271df60328a5a Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Fri, 12 Aug 2016 00:07:13 -0500
Subject: [PATCH 29/43] tm: fix darwin build

---
 pkgs/tools/system/tm/default.nix | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/pkgs/tools/system/tm/default.nix b/pkgs/tools/system/tm/default.nix
index a297f937100..3326f535b5f 100644
--- a/pkgs/tools/system/tm/default.nix
+++ b/pkgs/tools/system/tm/default.nix
@@ -6,7 +6,9 @@ stdenv.mkDerivation {
 
   installPhase=''make install "PREFIX=$out"'';
 
-  patchPhase = ''sed -i 's@/usr/bin/install@install@g' Makefile'';
+  patchPhase = ''
+    sed -i 's@/usr/bin/install@install@g ; s/gcc/cc/g' Makefile
+  '';
 
   crossAttrs = {
     makeFlags = "CC=${stdenv.cross.config}-gcc";

From 5f0d155f5b7fce2b5c3b089f560c76dfe11c71ad Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Fri, 12 Aug 2016 00:07:39 -0500
Subject: [PATCH 30/43] rakudo: fix darwin build

needs:

- CoreServices
- ApplicationServices
---
 pkgs/development/interpreters/rakudo/default.nix | 6 ++++--
 pkgs/top-level/all-packages.nix                  | 4 +++-
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/interpreters/rakudo/default.nix b/pkgs/development/interpreters/rakudo/default.nix
index 51b1bb85be6..210570ad846 100644
--- a/pkgs/development/interpreters/rakudo/default.nix
+++ b/pkgs/development/interpreters/rakudo/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, perl, icu, zlib, gmp, readline }:
+{ stdenv, fetchurl, perl, icu, zlib, gmp, readline
+, CoreServices, ApplicationServices }:
 
 stdenv.mkDerivation rec {
   name = "rakudo-star-${version}";
@@ -9,7 +10,8 @@ stdenv.mkDerivation rec {
     sha256 = "0czx7w1chf108mpyps7k7nqq8cbsy1rbb87ajms9xj65l4ywg8ka";
   };
 
-  buildInputs = [ icu zlib gmp readline perl ];
+  buildInputs = [ icu zlib gmp readline perl ]
+    ++ stdenv.lib.optionals stdenv.isDarwin [ CoreServices ApplicationServices ];
   configureScript = "perl ./Configure.pl";
   configureFlags =
     [ "--backends=moar"
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index cd813e3dcef..914f3152200 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -5958,7 +5958,9 @@ in
 
   racket = callPackage ../development/interpreters/racket { };
 
-  rakudo = callPackage ../development/interpreters/rakudo { };
+  rakudo = callPackage ../development/interpreters/rakudo {
+    inherit (darwin.apple_sdk.frameworks) CoreServices ApplicationServices;
+  };
 
   rascal = callPackage ../development/interpreters/rascal { };
 

From 0a76d1eb75a24c9ed1e5e263b6d8c4b3c42d79c0 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Fri, 12 Aug 2016 00:08:08 -0500
Subject: [PATCH 31/43] stfl: fix darwin build

- Use "cc" instead of "gcc".
- Add missing pthread to build.
---
 pkgs/development/libraries/stfl/default.nix | 1 +
 1 file changed, 1 insertion(+)

diff --git a/pkgs/development/libraries/stfl/default.nix b/pkgs/development/libraries/stfl/default.nix
index 4e24268314e..1430c3aa9c2 100644
--- a/pkgs/development/libraries/stfl/default.nix
+++ b/pkgs/development/libraries/stfl/default.nix
@@ -11,6 +11,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ ncurses libiconv ];
 
   buildPhase = ''
+    sed -i s/gcc/cc/g Makefile
     sed -i s%ncursesw/ncurses.h%ncurses.h% stfl_internals.h
   '' + ( stdenv.lib.optionalString stdenv.isDarwin ''
     sed -i 's/LDLIBS += -lncursesw/LDLIBS += -lncursesw -liconv/' Makefile

From 2d57d9440e9a412fbfd003b6db5f2918c73cbf7b Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Fri, 12 Aug 2016 00:08:32 -0500
Subject: [PATCH 32/43] stm32flash: fix darwin build

---
 pkgs/development/tools/misc/stm32flash/default.nix | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/pkgs/development/tools/misc/stm32flash/default.nix b/pkgs/development/tools/misc/stm32flash/default.nix
index 6b06bf385b3..f20343156e3 100644
--- a/pkgs/development/tools/misc/stm32flash/default.nix
+++ b/pkgs/development/tools/misc/stm32flash/default.nix
@@ -8,6 +8,8 @@ stdenv.mkDerivation {
     sha256 = "04k631g9lzvp9xr4sw51xpq1g542np61s1l8fpwx9rbsc8m5l0i6";
   };
 
+  buildFlags = [ "CC=cc" ];
+
   installPhase = ''
     # Manually copy, make install copies to /usr/local/bin
     mkdir -pv $out/bin/

From b988a35436c40686adec2e2460068b3251cc3255 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Fri, 12 Aug 2016 00:08:45 -0500
Subject: [PATCH 33/43] tie: fix darwin build

---
 pkgs/development/tools/misc/tie/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/development/tools/misc/tie/default.nix b/pkgs/development/tools/misc/tie/default.nix
index 11f2d62b76c..c73dbfce8f8 100644
--- a/pkgs/development/tools/misc/tie/default.nix
+++ b/pkgs/development/tools/misc/tie/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   };
 
   buildPhase = ''
-    gcc tie.c -o tie
+    cc tie.c -o tie
   '';
 
   installPhase = ''

From 077005f6c4f7adab54699af4fcab24761ee96323 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Fri, 12 Aug 2016 00:09:03 -0500
Subject: [PATCH 34/43] sailsd: fix darwin build

---
 pkgs/misc/sailsd/default.nix | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/pkgs/misc/sailsd/default.nix b/pkgs/misc/sailsd/default.nix
index 7ae0ebbf84a..36593794ed7 100644
--- a/pkgs/misc/sailsd/default.nix
+++ b/pkgs/misc/sailsd/default.nix
@@ -28,6 +28,11 @@ stdenv.mkDerivation rec {
     chmod 755 -R $sourceRoot/libsailing
   '';
 
+  patchPhase = ''
+    substituteInPlace Makefile \
+      --replace gcc cc
+  '';
+
   meta = with stdenv.lib; {
     description = "Simulator daemon for autonomous sailing boats";
     homepage = https://github.com/sails-simulator/sailsd;

From 0528b8c94e2ddedbdb5aa59c60ef910d22d53f9d Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Fri, 12 Aug 2016 00:09:15 -0500
Subject: [PATCH 35/43] runningx: fix darwin build

---
 pkgs/tools/X11/runningx/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/tools/X11/runningx/default.nix b/pkgs/tools/X11/runningx/default.nix
index a4b3f05c94c..1323da585c8 100644
--- a/pkgs/tools/X11/runningx/default.nix
+++ b/pkgs/tools/X11/runningx/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   phases = [ "buildPhase" "installPhase" ];
 
   buildPhase = ''
-    gcc -O2 -o RunningX $(pkg-config --cflags --libs x11) $src
+    cc -O2 -o RunningX $(pkg-config --cflags --libs x11) $src
   '';
 
   installPhase = ''

From 62ca3dd4b62f99aa62e696bb739177e8ca6923fe Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Fri, 12 Aug 2016 00:09:28 -0500
Subject: [PATCH 36/43] setroot: fix darwin build

---
 pkgs/tools/X11/setroot/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/tools/X11/setroot/default.nix b/pkgs/tools/X11/setroot/default.nix
index 74e0ed8d029..81b888ccb78 100644
--- a/pkgs/tools/X11/setroot/default.nix
+++ b/pkgs/tools/X11/setroot/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ libX11 imlib2 ]
     ++ stdenv.lib.optional enableXinerama libXinerama;
 
-  buildFlags = if enableXinerama then "xinerama=1" else "xinerama=0";
+  buildFlags = "CC=cc " + (if enableXinerama then "xinerama=1" else "xinerama=0");
 
   installFlags = "DESTDIR=$(out) PREFIX=";
 

From 94ad63a1aafaacf65b3296be35831931cb757544 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Fri, 12 Aug 2016 00:10:00 -0500
Subject: [PATCH 37/43] sl: fix darwin build

---
 pkgs/tools/misc/sl/default.nix | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/pkgs/tools/misc/sl/default.nix b/pkgs/tools/misc/sl/default.nix
index d21143f56e2..7a5ceb20449 100644
--- a/pkgs/tools/misc/sl/default.nix
+++ b/pkgs/tools/misc/sl/default.nix
@@ -13,6 +13,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ ncurses ];
 
+  buildFlags = [ "CC=cc" ];
+
   installPhase = ''
     mkdir -p $out/bin $out/share/man/man1
     cp sl $out/bin

From f6903292fc2b7e2f648f85001497e4182bce1f95 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Fri, 12 Aug 2016 00:10:17 -0500
Subject: [PATCH 38/43] tlsdate: dont build on darwin

There was a typo previously adding these in.
---
 pkgs/tools/networking/tlsdate/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/tools/networking/tlsdate/default.nix b/pkgs/tools/networking/tlsdate/default.nix
index 66ead809d0b..efea10eaa4d 100644
--- a/pkgs/tools/networking/tlsdate/default.nix
+++ b/pkgs/tools/networking/tlsdate/default.nix
@@ -46,6 +46,6 @@ stdenv.mkDerivation rec {
     description = "Secure parasitic rdate replacement";
     homepage = https://github.com/ioerror/tlsdate;
     maintainers = with maintainers; [ tv fpletz ];
-    platforms = platforms.allBut [ "darwin" ];
+    platforms = platforms.allBut platforms.darwin;
   };
 }

From 20e86e1282520bdbf3c9f796229d211e36f3e09e Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Fri, 12 Aug 2016 00:11:03 -0500
Subject: [PATCH 39/43] stricat: fix darwin build

---
 pkgs/tools/security/stricat/default.nix | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/pkgs/tools/security/stricat/default.nix b/pkgs/tools/security/stricat/default.nix
index 3dd00718af7..ecc34ede556 100644
--- a/pkgs/tools/security/stricat/default.nix
+++ b/pkgs/tools/security/stricat/default.nix
@@ -9,6 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "1axg8r4g5n5kdqj5013pgck80nni3z172xkg506vz4zx1zcmrm4r";
   };
 
+  buildFlags = [ "CC=cc" ];
+
   installPhase = ''
     mkdir -p $out/bin
     mv stricat $out/bin

From c92227f5cc223f1d424fa4aa4feda120b66f21eb Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Fri, 12 Aug 2016 00:11:24 -0500
Subject: [PATCH 40/43] smartmontools: fix darwin build

needs IOKit
---
 pkgs/tools/system/smartmontools/default.nix | 5 ++++-
 pkgs/top-level/all-packages.nix             | 4 +++-
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/pkgs/tools/system/smartmontools/default.nix b/pkgs/tools/system/smartmontools/default.nix
index 8445767e7b7..cc30cd7a488 100644
--- a/pkgs/tools/system/smartmontools/default.nix
+++ b/pkgs/tools/system/smartmontools/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchurl
+, IOKit ? null }:
 
 let
   version = "6.4";
@@ -18,6 +19,8 @@ stdenv.mkDerivation rec {
     sha256 = "11bsxcghh7adzdklcslamlynydxb708vfz892d5w7agdq405ddza";
   };
 
+  buildInputs = [] ++ stdenv.lib.optional stdenv.isDarwin IOKit;
+
   patchPhase = ''
     cp ${driverdb} drivedb.h
     sed -i -e 's@which which >/dev/null || exit 1@alias which="type -p"@' update-smart-drivedb.in
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 914f3152200..3137da9d36c 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -3498,7 +3498,9 @@ in
 
   slsnif = callPackage ../tools/misc/slsnif { };
 
-  smartmontools = callPackage ../tools/system/smartmontools { };
+  smartmontools = callPackage ../tools/system/smartmontools {
+    inherit (darwin.apple_sdk.frameworks) IOKit;
+  };
 
   smbldaptools = callPackage ../tools/networking/smbldaptools {
     inherit (perlPackages) NetLDAP CryptSmbHash DigestSHA1;

From bb245a5b1e3b3b39088983cc147bef5be66a448d Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Fri, 12 Aug 2016 00:19:42 -0500
Subject: [PATCH 41/43] unclutter: fix darwin build

---
 pkgs/tools/misc/unclutter/default.nix | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/pkgs/tools/misc/unclutter/default.nix b/pkgs/tools/misc/unclutter/default.nix
index d8731f764b3..a8468f8387f 100644
--- a/pkgs/tools/misc/unclutter/default.nix
+++ b/pkgs/tools/misc/unclutter/default.nix
@@ -9,6 +9,8 @@ stdenv.mkDerivation {
 
   buildInputs = [xlibsWrapper];
 
+  buildFlags = [ "CC=cc" ];
+
   installPhase = ''
     mkdir -pv "$out/bin"
     mkdir -pv "$out/share/man/man1"

From cf69e6d8700e3b9b6be86e69d47fde5435a7b378 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Fri, 12 Aug 2016 00:19:55 -0500
Subject: [PATCH 42/43] yeshup: only build on linux

It uses the linux-only sys/prctl.h header.
---
 pkgs/tools/system/yeshup/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/tools/system/yeshup/default.nix b/pkgs/tools/system/yeshup/default.nix
index 806d6cc5b94..8cea90b6758 100644
--- a/pkgs/tools/system/yeshup/default.nix
+++ b/pkgs/tools/system/yeshup/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     homepage = https://github.com/RhysU/yeshup;
-    platforms = platforms.all;
+    platforms = platforms.linux;
     license = licenses.cc-by-sa-30; # From Stackoverflow answer
     maintainers = with maintainers; [ obadz ];
   };

From a6faa04ee45f1466335cfeb28cfa1b897e31a9b7 Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Fri, 12 Aug 2016 00:20:56 -0500
Subject: [PATCH 43/43] unrtf: fix darwin build

unrtf needs libiconv on Darwin. Linux has issues with the -liconv flag,
but it's provided by gcc anyway.
---
 pkgs/tools/text/unrtf/default.nix | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/pkgs/tools/text/unrtf/default.nix b/pkgs/tools/text/unrtf/default.nix
index b1d8525c4da..34eea38eb73 100644
--- a/pkgs/tools/text/unrtf/default.nix
+++ b/pkgs/tools/text/unrtf/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, autoconf, automake }:
+{ stdenv, fetchurl, autoconf, automake, libiconv }:
 
 stdenv.mkDerivation rec {
   name = "unrtf-${version}";
@@ -11,6 +11,9 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoconf automake ];
 
+  buildInputs = [ ] ++ stdenv.lib.optional stdenv.isDarwin libiconv;
+  NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-liconv";
+
   preConfigure = "./bootstrap";
 
   outputs = [ "out" "man" ];