summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorAndres Loeh <mail@andres-loeh.de>2013-02-02 20:26:09 +0100
committerAndres Loeh <mail@andres-loeh.de>2013-02-02 20:26:34 +0100
commitac1d2a1221a873dfa105c178225e8a7643ecc794 (patch)
tree6c69b1e742d3dbf134172758c2744335933492f0 /pkgs
parentb73b7e29bd9c5c50f555537dede6f568e6f2fc0a (diff)
Add haskell-ghc-vis, haskell-heap-view and deps.
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/development/libraries/haskell/ghc-heap-view/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/ghc-vis/default.nix20
-rw-r--r--pkgs/development/libraries/haskell/xdot/default.nix14
-rw-r--r--pkgs/top-level/haskell-packages.nix12
4 files changed, 60 insertions, 0 deletions
diff --git a/pkgs/development/libraries/haskell/ghc-heap-view/default.nix b/pkgs/development/libraries/haskell/ghc-heap-view/default.nix
new file mode 100644
index 0000000000000..99aa99fc9d31a
--- /dev/null
+++ b/pkgs/development/libraries/haskell/ghc-heap-view/default.nix
@@ -0,0 +1,14 @@
+{ cabal, transformers }:
+
+cabal.mkDerivation (self: {
+  pname = "ghc-heap-view";
+  version = "0.4.1.0";
+  sha256 = "1icq5620j37n85d08yfpln75f9944flbqyqhjqsf0qr72zsm3w11";
+  buildDepends = [ transformers ];
+  meta = {
+    description = "Extract the heap representation of Haskell values and thunks";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.andres ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/ghc-vis/default.nix b/pkgs/development/libraries/haskell/ghc-vis/default.nix
new file mode 100644
index 0000000000000..4b606e8b73b98
--- /dev/null
+++ b/pkgs/development/libraries/haskell/ghc-vis/default.nix
@@ -0,0 +1,20 @@
+{ cabal, cairo, deepseq, fgl, ghcHeapView, graphviz, gtk, mtl
+, svgcairo, text, transformers, xdot
+}:
+
+cabal.mkDerivation (self: {
+  pname = "ghc-vis";
+  version = "0.6";
+  sha256 = "0gvfs0f6fjg4bzq9q6rrhin6gk1pbyw9qbigi90cz1fg10nq7nzi";
+  buildDepends = [
+    cairo deepseq fgl ghcHeapView graphviz gtk mtl svgcairo text
+    transformers xdot
+  ];
+  meta = {
+    homepage = "http://felsin9.de/nnis/ghc-vis";
+    description = "Live visualization of data structures in GHCi";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.andres ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/xdot/default.nix b/pkgs/development/libraries/haskell/xdot/default.nix
new file mode 100644
index 0000000000000..73cc5c6e76402
--- /dev/null
+++ b/pkgs/development/libraries/haskell/xdot/default.nix
@@ -0,0 +1,14 @@
+{ cabal, cairo, graphviz, gtk, mtl, polyparse, text }:
+
+cabal.mkDerivation (self: {
+  pname = "xdot";
+  version = "0.2.2";
+  sha256 = "1n7lwshfn5rzbk4fxlkn02fxki2xh5m0304hnb1d5mchxyzhfdan";
+  buildDepends = [ cairo graphviz gtk mtl polyparse text ];
+  meta = {
+    description = "Parse Graphviz xdot files and interactively view them using GTK and Cairo";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.andres ];
+  };
+})
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 290124dee1aa6..be8744c44939d 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -835,6 +835,10 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   ghcEvents = callPackage ../development/libraries/haskell/ghc-events {};
 
+  ghcHeapView = callPackage ../development/libraries/haskell/ghc-heap-view {
+    cabal = self.cabal.override { enableLibraryProfiling = false; }; # pkg cannot be built with profiling enabled
+  };
+
   ghcMod = callPackage ../development/libraries/haskell/ghc-mod {
     inherit (pkgs) emacs;
   };
@@ -847,6 +851,10 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   ghcSybUtils = callPackage ../development/libraries/haskell/ghc-syb-utils {};
 
+  ghcVis = callPackage ../development/libraries/haskell/ghc-vis {
+    cabal = self.cabal.override { enableLibraryProfiling = false; }; # pkg cannot be built with profiling enabled
+  };
+
   gio = callPackage ../development/libraries/haskell/gio {};
 
   gitit = callPackage ../development/libraries/haskell/gitit {};
@@ -1825,6 +1833,10 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   X11Xft = callPackage ../development/libraries/haskell/X11-xft {};
 
+  xdot = callPackage ../development/libraries/haskell/xdot {
+    polyparse = self.polyparse_1_7;
+  };
+
   xhtml_3000_2_0_1 = callPackage ../development/libraries/haskell/xhtml/3000.2.0.1.nix {};
   xhtml_3000_2_0_4 = callPackage ../development/libraries/haskell/xhtml/3000.2.0.4.nix {};
   xhtml_3000_2_0_5 = callPackage ../development/libraries/haskell/xhtml/3000.2.0.5.nix {};