1 { pkgs, stdenv, lib, haskellLib, ghc, all-cabal-hashes
3 , compilerConfig ? (self: super: {})
4 , packageSetConfig ? (self: super: {})
5 , overrides ? (self: super: {})
6 , initialPackages ? import ./initial-packages.nix
7 , nonHackagePackages ? import ./non-hackage-packages.nix
8 , configurationCommon ? import ./configuration-common.nix
9 , configurationNix ? import ./configuration-nix.nix
14 inherit (lib) extends makeExtensible;
15 inherit (haskellLib) makePackageSet;
17 haskellPackages = pkgs.callPackage makePackageSet {
18 package-set = initialPackages;
19 inherit stdenv haskellLib ghc buildHaskellPackages extensible-self all-cabal-hashes;
22 commonConfiguration = configurationCommon { inherit pkgs haskellLib; };
23 nixConfiguration = configurationNix { inherit pkgs haskellLib; };
25 extensible-self = makeExtensible
27 (extends packageSetConfig
28 (extends compilerConfig
29 (extends commonConfiguration
30 (extends nixConfiguration
31 (extends nonHackagePackages
32 haskellPackages))))));