@@ -49,7 +49,7 @@ hooks =
4949 , ("eventstore", over (metaSection . platforms) (Set.filter (\(Platform arch _) -> arch == X86_64)))
5050 , ("freenect < 1.2.1", over configureFlags (Set.union (Set.fromList ["--extra-include-dirs=${pkgs.freenect}/include/libfreenect", "--extra-lib-dirs=${pkgs.freenect}/lib"])))
5151 , ("gf", set phaseOverrides gfPhaseOverrides . set doCheck False)
52− , ("gi-cairo", giPhaseOverrides) -- https://github.com/haskell-gi/haskell-gi/issues/36
52+ , ("gi-cairo", giCairoPhaseOverrides) -- https://github.com/haskell-gi/haskell-gi/issues/36
5353 , ("gi-gio", giPhaseOverrides) -- https://github.com/haskell-gi/haskell-gi/issues/36
5454 , ("gi-glib", giPhaseOverrides) -- https://github.com/haskell-gi/haskell-gi/issues/36
5555 , ("gi-gobject", giPhaseOverrides) -- https://github.com/haskell-gi/haskell-gi/issues/36
@@ -255,6 +255,15 @@ giJavascriptCorePhaseOverrides
255255 = set phaseOverrides "preConfigure = \"export HASKELL_GI_GIR_SEARCH_PATH=${webkitgtk}/share/gir-1.0\";"
256256 . set (libraryDepends . pkgconfig . contains (pkg "webkitgtk")) True
257257
258+giCairoPhaseOverrides :: Derivation -> Derivation
259+giCairoPhaseOverrides = over phaseOverrides (++'\n':txt) . giPhaseOverrides
260+ where
261+ txt = unlines [ "preCompileBuildDriver = ''"
262+ , " PKG_CONFIG_PATH+=\":${cairo}/lib/pkgconfig\""
263+ , " setupCompileFlags+=\" $(pkg-config --libs cairo-gobject)\""
264+ , "'';"
265+ ]
266+
258267{-
259268postProcess' :: Derivation -> Derivation
260269postProcess' deriv@(MkDerivation {..})