From 915b22e4005af7912121396b405069367c2fc868 Mon Sep 17 00:00:00 2001 From: "(cdep)illabout" Date: Wed, 6 Nov 2019 19:48:41 +0900 Subject: [PATCH] haskellPackages.purescript: unbreak --- .../haskell-modules/configuration-common.nix | 19 +++++++++++++++++-- .../configuration-hackage2nix.yaml | 1 - 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index 457fe747a8d..ea1e60c52f9 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -1114,8 +1114,23 @@ self: super: { # https://github.com/snapframework/xmlhtml/pull/37 xmlhtml = doJailbreak super.xmlhtml; - # Generate shell completions - purescript = generateOptparseApplicativeCompletion "purs" super.purescript; + purescript = + let + purescriptWithOverrides = super.purescript.override { + # PureScript requires an older version of happy. + happy = self.happy_1_19_9; + }; + + # PureScript is built against LTS-13, so we need to jailbreak it to + # accept more recent versions of the libraries it requires. + jailBrokenPurescript = doJailbreak purescriptWithOverrides; + + # Haddocks for PureScript can't be built. + # https://github.com/purescript/purescript/pull/3745 + dontHaddockPurescript = dontHaddock jailBrokenPurescript; + in + # Generate shell completions + generateOptparseApplicativeCompletion "purs" dontHaddockPurescript; # https://github.com/kcsongor/generic-lens/pull/65 generic-lens = dontCheck super.generic-lens; diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml index ea3910e2abf..6c62c84266c 100644 --- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml +++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml @@ -8146,7 +8146,6 @@ broken-packages: - pure-priority-queue - pure-priority-queue-tests - purebred-email - - purescript - purescript-iso - purescript-tsd-gen - push-notify