let
  pkgs = import <nixpkgs> { };
  haskellEnv = pkgs.haskellPackages.developPackage {
    root = ./.;
    modifier = drv:
      pkgs.haskell.lib.addBuildTools drv (with pkgs.haskellPackages;
        [
          cabal-install
          hlint
          ormolu
        ]);
  };
in haskellEnv.overrideAttrs(o: {
  buildInputs = o.buildInputs ++
                (with pkgs.elmPackages; [
                  pkgs.entr
                  elm
                  elm-format
                  elm-optimize-level-2
                  elm-review
                  elm-analyse
                  elm-test
                ]);
})
