From 777dcd7ee3c86ab54ed5db8ce0a61c358bab2ad5 Mon Sep 17 00:00:00 2001 From: Deniz Alp Date: Wed, 20 Oct 2021 23:36:35 +0300 Subject: [PATCH] haskellPackages.ghc-vis: Disable library profiling `ghc-vis` doesn't support library profiling, as noted in: > http://felsin9.de/nnis/ghc-vis/#installation This gets the package building and it runs fine when called from ghci as you normally would, however when you actually try viewing an expression it fails with the following error message: ``` ghc: Error running utility program: Unable to call the command dot with the arguments: " -Txdot " because of: dot: runInteractiveProcess: posix_spawnp: does not exist (No such file or directory) ``` As far as I can tell that is because `ghc-vis` needs to run dot at runtime but since it's a library adding `graphviz` as a dependency doesn't quite do the trick. And while not ideal adding `graphviz` to the shell you're running `ghc-vis` at works around this issue. --- pkgs/development/haskell-modules/configuration-common.nix | 1 + .../haskell-modules/configuration-hackage2nix/broken.yaml | 1 - .../haskell-modules/configuration-hackage2nix/main.yaml | 1 + pkgs/development/haskell-modules/hackage-packages.nix | 3 +-- 4 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index 1afa282a1785..939c99529782 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -49,6 +49,7 @@ self: super: { # These packages (and their reverse deps) cannot be built with profiling enabled. ghc-heap-view = disableLibraryProfiling super.ghc-heap-view; ghc-datasize = disableLibraryProfiling super.ghc-datasize; + ghc-vis = disableLibraryProfiling super.ghc-vis; # This test keeps being aborted because it runs too quietly for too long Lazy-Pbkdf2 = if pkgs.stdenv.isi686 then dontCheck super.Lazy-Pbkdf2 else super.Lazy-Pbkdf2; diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml index 743657a1e3ec..19e9097eec8e 100644 --- a/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml +++ b/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml @@ -1655,7 +1655,6 @@ broken-packages: - ghc-tcplugin-api - ghc-time-alloc-prof - ghc-usage - - ghc-vis - gh-labeler - giak - Gifcurry diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml index 6c11b2832ed6..504ab5552c1d 100644 --- a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml +++ b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml @@ -154,6 +154,7 @@ package-maintainers: - spago - termonad dalpd: + - ghc-vis - svgcairo domenkozar: - cachix diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix index 06fcbd26372e..549edccbb2b4 100644 --- a/pkgs/development/haskell-modules/hackage-packages.nix +++ b/pkgs/development/haskell-modules/hackage-packages.nix @@ -105065,8 +105065,7 @@ self: { ]; description = "Live visualization of data structures in GHCi"; license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; - broken = true; + maintainers = with lib.maintainers; [ dalpd ]; }) {}; "ghcflags" = callPackage