diff --git a/pkgs/top-level/haskell-defaults.nix b/pkgs/top-level/haskell-defaults.nix index 01352707dffc..8f0f0f7d245e 100644 --- a/pkgs/top-level/haskell-defaults.nix +++ b/pkgs/top-level/haskell-defaults.nix @@ -16,204 +16,204 @@ # for a particular GHC version. ghcHEADPrefs = - self : self.haskellPlatformArgs_future self // { + super : super.haskellPlatformArgs_future super // { haskellPlatform = null; - extensibleExceptions = self.extensibleExceptions_0_1_1_4; + extensibleExceptions = super.extensibleExceptions_0_1_1_4; binary_0_7_1_0 = null; }; ghc763Prefs = - self : self.haskellPlatformArgs_2013_2_0_0 self // { - haskellPlatform = self.haskellPlatform_2013_2_0_0; - extensibleExceptions = self.extensibleExceptions_0_1_1_4; + super : super.haskellPlatformArgs_2013_2_0_0 super // { + haskellPlatform = super.haskellPlatform_2013_2_0_0; + extensibleExceptions = super.extensibleExceptions_0_1_1_4; }; ghc742Prefs = - self : self.haskellPlatformArgs_2012_4_0_0 self // { - haskellPlatform = self.haskellPlatform_2012_4_0_0; - cabalInstall_1_16_0_2 = self.cabalInstall_1_16_0_2.override { Cabal = self.Cabal_1_16_0_3; }; - cabal2nix = self.cabal2nix.override { Cabal = self.Cabal_1_16_0_3; hackageDb = self.hackageDb.override { Cabal = self.Cabal_1_16_0_3; }; }; - haskeline = self.haskeline_0_7_1_1; - terminfo = self.terminfo_0_3_2_6; + super : super.haskellPlatformArgs_2012_4_0_0 super // { + haskellPlatform = super.haskellPlatform_2012_4_0_0; + cabalInstall_1_16_0_2 = super.cabalInstall_1_16_0_2.override { Cabal = super.Cabal_1_16_0_3; }; + cabal2nix = super.cabal2nix.override { Cabal = super.Cabal_1_16_0_3; hackageDb = super.hackageDb.override { Cabal = super.Cabal_1_16_0_3; }; }; + haskeline = super.haskeline_0_7_1_1; + terminfo = super.terminfo_0_3_2_6; }; ghc741Prefs = - self : self.haskellPlatformArgs_2012_2_0_0 self // { - haskellPlatform = self.haskellPlatform_2012_2_0_0; - cabalInstall_1_16_0_2 = self.cabalInstall_1_16_0_2.override { Cabal = self.Cabal_1_16_0_3; }; - cabal2nix = self.cabal2nix.override { Cabal = self.Cabal_1_16_0_3; hackageDb = self.hackageDb.override { Cabal = self.Cabal_1_16_0_3; }; }; - haskeline = self.haskeline_0_7_1_1; - terminfo = self.terminfo_0_3_2_6; + super : super.haskellPlatformArgs_2012_2_0_0 super // { + haskellPlatform = super.haskellPlatform_2012_2_0_0; + cabalInstall_1_16_0_2 = super.cabalInstall_1_16_0_2.override { Cabal = super.Cabal_1_16_0_3; }; + cabal2nix = super.cabal2nix.override { Cabal = super.Cabal_1_16_0_3; hackageDb = super.hackageDb.override { Cabal = super.Cabal_1_16_0_3; }; }; + haskeline = super.haskeline_0_7_1_1; + terminfo = super.terminfo_0_3_2_6; }; ghc722Prefs = - self : self.haskellPlatformArgs_2012_2_0_0 self // { - haskellPlatform = self.haskellPlatform_2012_2_0_0; - deepseq = self.deepseq_1_3_0_2; - cabalInstall_0_14_0 = self.cabalInstall_0_14_0.override { Cabal = self.Cabal_1_14_0; }; - cabalInstall_1_16_0_2 = self.cabalInstall_1_16_0_2.override { Cabal = self.Cabal_1_16_0_3; }; - cabalInstall_1_20_0_1 = self.cabalInstall_1_20_0_1.override { HTTP = self.HTTP_4000_2_14; }; - cabalInstall = self.cabalInstall_0_14_0.override { Cabal = self.Cabal_1_14_0; }; - cabal2nix = self.cabal2nix.override { Cabal = self.Cabal_1_16_0_3; hackageDb = self.hackageDb.override { Cabal = self.Cabal_1_16_0_3; }; }; - binary = self.binary_0_6_0_0; - prettyShow = self.prettyShow_1_2; - quickcheckIo = self.quickcheckIo.override { - HUnit = self.HUnit_1_2_5_2; - QuickCheck = self.QuickCheck2; + super : super.haskellPlatformArgs_2012_2_0_0 super // { + haskellPlatform = super.haskellPlatform_2012_2_0_0; + deepseq = super.deepseq_1_3_0_2; + cabalInstall_0_14_0 = super.cabalInstall_0_14_0.override { Cabal = super.Cabal_1_14_0; }; + cabalInstall_1_16_0_2 = super.cabalInstall_1_16_0_2.override { Cabal = super.Cabal_1_16_0_3; }; + cabalInstall_1_20_0_1 = super.cabalInstall_1_20_0_1.override { HTTP = super.HTTP_4000_2_14; }; + cabalInstall = super.cabalInstall_0_14_0.override { Cabal = super.Cabal_1_14_0; }; + cabal2nix = super.cabal2nix.override { Cabal = super.Cabal_1_16_0_3; hackageDb = super.hackageDb.override { Cabal = super.Cabal_1_16_0_3; }; }; + binary = super.binary_0_6_0_0; + prettyShow = super.prettyShow_1_2; + quickcheckIo = super.quickcheckIo.override { + HUnit = super.HUnit_1_2_5_2; + QuickCheck = super.QuickCheck2; }; - hspecExpectations = self.hspecExpectations.override { - HUnit = self.HUnit_1_2_5_2; + hspecExpectations = super.hspecExpectations.override { + HUnit = super.HUnit_1_2_5_2; }; - haskeline = self.haskeline_0_7_1_1; - terminfo = self.terminfo_0_3_2_6; + haskeline = super.haskeline_0_7_1_1; + terminfo = super.terminfo_0_3_2_6; }; ghc721Prefs = ghc722Prefs; ghc704Prefs = - self : self.haskellPlatformArgs_2011_4_0_0 self // { - haskellPlatform = self.haskellPlatform_2011_4_0_0; - cabalInstall_0_14_0 = self.cabalInstall_0_14_0.override { Cabal = self.Cabal_1_14_0; }; - cabalInstall_1_16_0_2 = self.cabalInstall_1_16_0_2.override { Cabal = self.Cabal_1_16_0_3; }; - monadPar = self.monadPar_0_1_0_3; - jailbreakCabal = self.jailbreakCabal.override { Cabal = self.disableTest self.Cabal_1_14_0; }; - cabal2nix = self.cabal2nix.override { Cabal = self.Cabal_1_16_0_3; hackageDb = self.hackageDb.override { Cabal = self.Cabal_1_16_0_3; }; }; - prettyShow = self.prettyShow_1_2; - binary = self.binary_0_6_0_0; - Cabal_1_18_1_3 = self.Cabal_1_18_1_3.override { deepseq = self.deepseq_1_3_0_2; }; - quickcheckIo = self.quickcheckIo.override { - HUnit = self.HUnit_1_2_5_2; - QuickCheck = self.QuickCheck2; + super : super.haskellPlatformArgs_2011_4_0_0 super // { + haskellPlatform = super.haskellPlatform_2011_4_0_0; + cabalInstall_0_14_0 = super.cabalInstall_0_14_0.override { Cabal = super.Cabal_1_14_0; }; + cabalInstall_1_16_0_2 = super.cabalInstall_1_16_0_2.override { Cabal = super.Cabal_1_16_0_3; }; + monadPar = super.monadPar_0_1_0_3; + jailbreakCabal = super.jailbreakCabal.override { Cabal = super.disableTest super.Cabal_1_14_0; }; + cabal2nix = super.cabal2nix.override { Cabal = super.Cabal_1_16_0_3; hackageDb = super.hackageDb.override { Cabal = super.Cabal_1_16_0_3; }; }; + prettyShow = super.prettyShow_1_2; + binary = super.binary_0_6_0_0; + Cabal_1_18_1_3 = super.Cabal_1_18_1_3.override { deepseq = super.deepseq_1_3_0_2; }; + quickcheckIo = super.quickcheckIo.override { + HUnit = super.HUnit_1_2_5_2; + QuickCheck = super.QuickCheck2; }; - hspecExpectations = self.hspecExpectations.override { - HUnit = self.HUnit_1_2_5_2; + hspecExpectations = super.hspecExpectations.override { + HUnit = super.HUnit_1_2_5_2; }; - haskeline = self.haskeline_0_7_1_1; - terminfo = self.terminfo_0_3_2_6; + haskeline = super.haskeline_0_7_1_1; + terminfo = super.terminfo_0_3_2_6; }; ghc703Prefs = - self : self.haskellPlatformArgs_2011_2_0_1 self // { - haskellPlatform = self.haskellPlatform_2011_2_0_1; - cabalInstall_0_14_0 = self.cabalInstall_0_14_0.override { Cabal = self.Cabal_1_14_0; zlib = self.zlib_0_5_3_3; }; - cabalInstall_1_16_0_2 = self.cabalInstall_1_16_0_2.override { Cabal = self.Cabal_1_16_0_3; zlib = self.zlib_0_5_3_3; }; - monadPar = self.monadPar_0_1_0_3; - jailbreakCabal = self.jailbreakCabal.override { Cabal = self.disableTest self.Cabal_1_14_0; }; - cabal2nix = self.cabal2nix.override { Cabal = self.Cabal_1_16_0_3; hackageDb = self.hackageDb.override { Cabal = self.Cabal_1_16_0_3; }; }; - prettyShow = self.prettyShow_1_2; - binary = self.binary_0_6_0_0; - Cabal_1_18_1_3 = self.Cabal_1_18_1_3.override { deepseq = self.deepseq_1_3_0_2; }; - quickcheckIo = self.quickcheckIo.override { - HUnit = self.HUnit_1_2_5_2; - QuickCheck = self.QuickCheck2; + super : super.haskellPlatformArgs_2011_2_0_1 super // { + haskellPlatform = super.haskellPlatform_2011_2_0_1; + cabalInstall_0_14_0 = super.cabalInstall_0_14_0.override { Cabal = super.Cabal_1_14_0; zlib = super.zlib_0_5_3_3; }; + cabalInstall_1_16_0_2 = super.cabalInstall_1_16_0_2.override { Cabal = super.Cabal_1_16_0_3; zlib = super.zlib_0_5_3_3; }; + monadPar = super.monadPar_0_1_0_3; + jailbreakCabal = super.jailbreakCabal.override { Cabal = super.disableTest super.Cabal_1_14_0; }; + cabal2nix = super.cabal2nix.override { Cabal = super.Cabal_1_16_0_3; hackageDb = super.hackageDb.override { Cabal = super.Cabal_1_16_0_3; }; }; + prettyShow = super.prettyShow_1_2; + binary = super.binary_0_6_0_0; + Cabal_1_18_1_3 = super.Cabal_1_18_1_3.override { deepseq = super.deepseq_1_3_0_2; }; + quickcheckIo = super.quickcheckIo.override { + HUnit = super.HUnit_1_2_5_2; + QuickCheck = super.QuickCheck2; }; - hspecExpectations = self.hspecExpectations.override { - HUnit = self.HUnit_1_2_5_2; + hspecExpectations = super.hspecExpectations.override { + HUnit = super.HUnit_1_2_5_2; }; - haskeline = self.haskeline_0_7_1_1; - terminfo = self.terminfo_0_3_2_6; + haskeline = super.haskeline_0_7_1_1; + terminfo = super.terminfo_0_3_2_6; }; ghc702Prefs = ghc701Prefs; ghc701Prefs = - self : self.haskellPlatformArgs_2011_2_0_0 self // { - haskellPlatform = self.haskellPlatform_2011_2_0_0; - cabalInstall_0_14_0 = self.cabalInstall_0_14_0.override { Cabal = self.Cabal_1_14_0; zlib = self.zlib_0_5_3_3; }; - cabalInstall_1_16_0_2 = self.cabalInstall_1_16_0_2.override { Cabal = self.Cabal_1_16_0_3; zlib = self.zlib_0_5_3_3; }; - monadPar = self.monadPar_0_1_0_3; - jailbreakCabal = self.jailbreakCabal.override { Cabal = self.disableTest self.Cabal_1_14_0; }; - cabal2nix = self.cabal2nix.override { Cabal = self.Cabal_1_16_0_3; hackageDb = self.hackageDb.override { Cabal = self.Cabal_1_16_0_3; }; }; - prettyShow = self.prettyShow_1_2; - binary = self.binary_0_6_0_0; - Cabal_1_18_1_3 = self.Cabal_1_18_1_3.override { deepseq = self.deepseq_1_3_0_2; }; - quickcheckIo = self.quickcheckIo.override { - HUnit = self.HUnit_1_2_5_2; - QuickCheck = self.QuickCheck2; + super : super.haskellPlatformArgs_2011_2_0_0 super // { + haskellPlatform = super.haskellPlatform_2011_2_0_0; + cabalInstall_0_14_0 = super.cabalInstall_0_14_0.override { Cabal = super.Cabal_1_14_0; zlib = super.zlib_0_5_3_3; }; + cabalInstall_1_16_0_2 = super.cabalInstall_1_16_0_2.override { Cabal = super.Cabal_1_16_0_3; zlib = super.zlib_0_5_3_3; }; + monadPar = super.monadPar_0_1_0_3; + jailbreakCabal = super.jailbreakCabal.override { Cabal = super.disableTest super.Cabal_1_14_0; }; + cabal2nix = super.cabal2nix.override { Cabal = super.Cabal_1_16_0_3; hackageDb = super.hackageDb.override { Cabal = super.Cabal_1_16_0_3; }; }; + prettyShow = super.prettyShow_1_2; + binary = super.binary_0_6_0_0; + Cabal_1_18_1_3 = super.Cabal_1_18_1_3.override { deepseq = super.deepseq_1_3_0_2; }; + quickcheckIo = super.quickcheckIo.override { + HUnit = super.HUnit_1_2_5_2; + QuickCheck = super.QuickCheck2; }; - hspecExpectations = self.hspecExpectations.override { - HUnit = self.HUnit_1_2_5_2; + hspecExpectations = super.hspecExpectations.override { + HUnit = super.HUnit_1_2_5_2; }; - haskeline = self.haskeline_0_7_1_1; - terminfo = self.terminfo_0_3_2_6; + haskeline = super.haskeline_0_7_1_1; + terminfo = super.terminfo_0_3_2_6; }; ghc6123Prefs = ghc6122Prefs; ghc6122Prefs = - self : self.haskellPlatformArgs_2010_2_0_0 self // { - haskellPlatform = self.haskellPlatform_2010_2_0_0; - mtl1 = self.mtl_1_1_0_2; - monadPar = self.monadPar_0_1_0_3; - deepseq = self.deepseq_1_1_0_2; + super : super.haskellPlatformArgs_2010_2_0_0 super // { + haskellPlatform = super.haskellPlatform_2010_2_0_0; + mtl1 = super.mtl_1_1_0_2; + monadPar = super.monadPar_0_1_0_3; + deepseq = super.deepseq_1_1_0_2; # deviating from Haskell platform here, to make some packages (notably statistics) compile - jailbreakCabal = self.jailbreakCabal.override { Cabal = self.disableTest self.Cabal_1_14_0; }; - cabal2nix = self.cabal2nix.override { Cabal = self.Cabal_1_16_0_3; hackageDb = self.hackageDb.override { Cabal = self.Cabal_1_16_0_3; }; }; - binary = self.binary_0_6_0_0; - cabalInstall_1_16_0_2 = self.cabalInstall_1_16_0_2.override { - Cabal = self.Cabal_1_16_0_3; zlib = self.zlib_0_5_3_3; - mtl = self.mtl_2_1_2; - HTTP = self.HTTP_4000_1_1.override { mtl = self.mtl_2_1_2; }; + jailbreakCabal = super.jailbreakCabal.override { Cabal = super.disableTest super.Cabal_1_14_0; }; + cabal2nix = super.cabal2nix.override { Cabal = super.Cabal_1_16_0_3; hackageDb = super.hackageDb.override { Cabal = super.Cabal_1_16_0_3; }; }; + binary = super.binary_0_6_0_0; + cabalInstall_1_16_0_2 = super.cabalInstall_1_16_0_2.override { + Cabal = super.Cabal_1_16_0_3; zlib = super.zlib_0_5_3_3; + mtl = super.mtl_2_1_2; + HTTP = super.HTTP_4000_1_1.override { mtl = super.mtl_2_1_2; }; }; - quickcheckIo = self.quickcheckIo.override { - HUnit = self.HUnit_1_2_5_2; - QuickCheck = self.QuickCheck2; + quickcheckIo = super.quickcheckIo.override { + HUnit = super.HUnit_1_2_5_2; + QuickCheck = super.QuickCheck2; }; - hspecExpectations = self.hspecExpectations.override { - HUnit = self.HUnit_1_2_5_2; + hspecExpectations = super.hspecExpectations.override { + HUnit = super.HUnit_1_2_5_2; }; - haskeline = self.haskeline_0_7_1_1; - terminfo = self.terminfo_0_3_2_6; + haskeline = super.haskeline_0_7_1_1; + terminfo = super.terminfo_0_3_2_6; }; ghc6121Prefs = - self : self.haskellPlatformArgs_2010_1_0_0 self // { - haskellPlatform = self.haskellPlatform_2010_1_0_0; - mtl1 = self.mtl_1_1_0_2; - extensibleExceptions = self.extensibleExceptions_0_1_1_0; - deepseq = self.deepseq_1_1_0_2; - monadPar = self.monadPar_0_1_0_3; + super : super.haskellPlatformArgs_2010_1_0_0 super // { + haskellPlatform = super.haskellPlatform_2010_1_0_0; + mtl1 = super.mtl_1_1_0_2; + extensibleExceptions = super.extensibleExceptions_0_1_1_0; + deepseq = super.deepseq_1_1_0_2; + monadPar = super.monadPar_0_1_0_3; # deviating from Haskell platform here, to make some packages (notably statistics) compile - jailbreakCabal = self.jailbreakCabal.override { Cabal = self.disableTest self.Cabal_1_14_0; }; - cabal2nix = self.cabal2nix.override { Cabal = self.Cabal_1_16_0_3; hackageDb = self.hackageDb.override { Cabal = self.Cabal_1_16_0_3; }; }; - binary = self.binary_0_6_0_0; - cabalInstall_1_16_0_2 = self.cabalInstall_1_16_0_2.override { - Cabal = self.Cabal_1_16_0_3; - zlib = self.zlib_0_5_3_3; - mtl = self.mtl_2_1_2; - HTTP = self.HTTP_4000_1_1.override { mtl = self.mtl_2_1_2; }; + jailbreakCabal = super.jailbreakCabal.override { Cabal = super.disableTest super.Cabal_1_14_0; }; + cabal2nix = super.cabal2nix.override { Cabal = super.Cabal_1_16_0_3; hackageDb = super.hackageDb.override { Cabal = super.Cabal_1_16_0_3; }; }; + binary = super.binary_0_6_0_0; + cabalInstall_1_16_0_2 = super.cabalInstall_1_16_0_2.override { + Cabal = super.Cabal_1_16_0_3; + zlib = super.zlib_0_5_3_3; + mtl = super.mtl_2_1_2; + HTTP = super.HTTP_4000_1_1.override { mtl = super.mtl_2_1_2; }; }; - quickcheckIo = self.quickcheckIo.override { - HUnit = self.HUnit_1_2_5_2; - QuickCheck = self.QuickCheck2; + quickcheckIo = super.quickcheckIo.override { + HUnit = super.HUnit_1_2_5_2; + QuickCheck = super.QuickCheck2; }; - hspecExpectations = self.hspecExpectations.override { - HUnit = self.HUnit_1_2_5_2; + hspecExpectations = super.hspecExpectations.override { + HUnit = super.HUnit_1_2_5_2; }; - haskeline = self.haskeline_0_7_1_1; - terminfo = self.terminfo_0_3_2_6; + haskeline = super.haskeline_0_7_1_1; + terminfo = super.terminfo_0_3_2_6; }; ghc6104Prefs = - self : self.haskellPlatformArgs_2009_2_0_2 self // { - haskellPlatform = self.haskellPlatform_2009_2_0_2; - mtl = self.mtl_1_1_0_2; - mtl1 = self.mtl_1_1_0_2; - extensibleExceptions = self.extensibleExceptions_0_1_1_0; - text = self.text_0_11_0_6; - deepseq = self.deepseq_1_1_0_2; - monadPar = self.monadPar_0_1_0_3; + super : super.haskellPlatformArgs_2009_2_0_2 super // { + haskellPlatform = super.haskellPlatform_2009_2_0_2; + mtl = super.mtl_1_1_0_2; + mtl1 = super.mtl_1_1_0_2; + extensibleExceptions = super.extensibleExceptions_0_1_1_0; + text = super.text_0_11_0_6; + deepseq = super.deepseq_1_1_0_2; + monadPar = super.monadPar_0_1_0_3; # deviating from Haskell platform here, to make some packages (notably statistics) compile - jailbreakCabal = self.jailbreakCabal.override { Cabal = self.disableTest self.Cabal_1_14_0; }; - binary = self.binary_0_6_0_0; - cabalInstall_1_16_0_2 = self.cabalInstall_1_16_0_2.override { - Cabal = self.Cabal_1_16_0_3; - zlib = self.zlib_0_5_3_3; - mtl = self.mtl_2_1_2; - HTTP = self.HTTP_4000_1_1.override { mtl = self.mtl_2_1_2; }; + jailbreakCabal = super.jailbreakCabal.override { Cabal = super.disableTest super.Cabal_1_14_0; }; + binary = super.binary_0_6_0_0; + cabalInstall_1_16_0_2 = super.cabalInstall_1_16_0_2.override { + Cabal = super.Cabal_1_16_0_3; + zlib = super.zlib_0_5_3_3; + mtl = super.mtl_2_1_2; + HTTP = super.HTTP_4000_1_1.override { mtl = super.mtl_2_1_2; }; }; - haskeline = self.haskeline_0_7_1_1; - terminfo = self.terminfo_0_3_2_6; + haskeline = super.haskeline_0_7_1_1; + terminfo = super.terminfo_0_3_2_6; }; # Abstraction for Haskell packages collections @@ -221,20 +221,22 @@ ({ ghcPath , ghcBinary ? ghc6101Binary , prefFun - , extraPrefs ? (x : {}) + , extension ? (self : super : {}) , profExplicit ? false, profDefault ? false , modifyPrio ? lowPrio , extraArgs ? {} } : - import ./haskell-packages.nix { - inherit pkgs newScope modifyPrio; - prefFun = self : super : self // prefFun super // extraPrefs super; - # prefFun = self : super : self; - enableLibraryProfiling = - if profExplicit then profDefault - else config.cabal.libraryProfiling or profDefault; - ghc = callPackage ghcPath ({ ghc = ghcBinary; } // extraArgs); - }); + let haskellPackagesClass = import ./haskell-packages.nix { + inherit pkgs newScope modifyPrio; + enableLibraryProfiling = + if profExplicit then profDefault + else config.cabal.libraryProfiling or profDefault; + ghc = callPackage ghcPath ({ ghc = ghcBinary; } // extraArgs); + }; + haskellPackagesPrefsClass = self : let super = haskellPackagesClass self; in super // prefFun super; + haskellPackagesExtensionClass = self : let super = haskellPackagesPrefsClass self; in super // extension self super; + haskellPackages = haskellPackagesExtensionClass haskellPackages; + in haskellPackages); defaultVersionPrioFun = profDefault : diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 1e7a72977582..edb21dd4303c 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -58,7 +58,7 @@ # # For most packages, however, we keep only one version, and use default.nix. -{ pkgs, newScope, ghc, prefFun, modifyPrio ? (x : x) +{ pkgs, newScope, ghc, modifyPrio ? (x : x) , enableLibraryProfiling ? false , enableSharedLibraries ? pkgs.stdenv.lib.versionOlder "7.7" ghc.version , enableSharedExecutables ? pkgs.stdenv.lib.versionOlder "7.7" ghc.version @@ -70,17 +70,13 @@ # modifyPrio argument can be set to lowPrio to make all Haskell packages have # low priority. -let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x y); - self = (prefFun result) result; in +self : let callPackage = x : y : modifyPrio (newScope self x y); in # Indentation deliberately broken at this point to keep the bulk # of this file at a low indentation level. { - - finalReturn = self; - - callPackage = callPackage; + inherit callPackage; # GHC and its wrapper # @@ -3171,6 +3167,4 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x # End of the main part of the file. -}; - -in result.finalReturn +}