diff options
Diffstat (limited to 'users/glittershark/xanthous/shell.nix')
-rw-r--r-- | users/glittershark/xanthous/shell.nix | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/users/glittershark/xanthous/shell.nix b/users/glittershark/xanthous/shell.nix new file mode 100644 index 000000000000..edd2fe4c08d6 --- /dev/null +++ b/users/glittershark/xanthous/shell.nix @@ -0,0 +1,30 @@ +{ nixpkgs ? import ./nixpkgs.nix {}, compiler ? "ghc865", withHoogle ? true }: +let + inherit (nixpkgs) pkgs; + + pkg = import ./pkg.nix { inherit nixpkgs; }; + + packageSet = ( + if compiler == "default" + then pkgs.haskellPackages + else pkgs.haskell.packages.${compiler} + ).override { + overrides = import ./haskell-overlay.nix { inherit nixpkgs; }; + }; + + haskellPackages = ( + if withHoogle + then packageSet.override { + overrides = (self: super: { + ghc = super.ghc // { withPackages = super.ghc.withHoogle; }; + ghcWithPackages = self.ghc.withPackages; + } // (import ./haskell-overlay.nix { inherit nixpkgs; }) self super); + } + else packageSet + ); + + drv = haskellPackages.callPackage pkg {}; + + inherit (pkgs.haskell.lib) addBuildTools; +in +(addBuildTools drv (with haskellPackages; [ cabal-install ])).env |