{ nixpkgs, haskellPackages }: let jsaddle = nixpkgs.fetchFromGitHub { owner = "ghcjs"; repo = "jsaddle"; rev = "68208be806c49a2a0c9f037dfac85feae10a8c80"; sha256 = "0acj0x716ikfb08ndib36jmwxkwq399lvkip46sfkh1ynn0pvc1c"; }; miso = nixpkgs.fetchFromGitHub { owner = "dmjio"; repo = "miso"; rev = "a9c4f0a3a6e7d87f9432dc6cf4b1d0c052bf7ef1"; sha256 = "1yq5y4vffslm6abnfnggp5m3k6vla6mzcwmhmm23l8yizsvdkwv2"; }; dontCheck = nixpkgs.haskell.lib.dontCheck; in (import ./project.nix nixpkgs) { haskellPackages = haskellPackages; packages = { common = ./common; backend = ./backend; frontend = ./frontend; }; overrides = self: super: { generic-lens = nixpkgs.haskell.lib.dontCheck super.generic-lens; jsaddle-warp = nixpkgs.haskell.lib.dontCheck (super.callPackage (jsaddle + "/jsaddle-warp") {}); jsaddle = super.callPackage (jsaddle + "/jsaddle") {}; miso = super.callPackage (miso + "/miso-ghc-jsaddle.nix") {}; doctest = null; # Not compilable with ghcjs comonad = dontCheck super.comonad; Glob = dontCheck super.Glob; SHA = dontCheck super.SHA; iproute = dontCheck super.iproute; semigroupoids = dontCheck super.semigroupoids; wai-app-static = dontCheck super.wai-app-static; attoparsec = dontCheck super.attoparsec; http-date = dontCheck super.http-date; lens = dontCheck super.lens; unix-time = dontCheck super.unix-time; http-types = dontCheck super.http-types; servant = dontCheck super.servant; word8 = dontCheck super.word8; http2 = dontCheck super.http2; wai-extra = dontCheck super.wai-extra; haskeline = super.callHackage "haskeline" "0.7.3.1" {}; terminfo = super.callHackage "terminfo" "0.4.1.1" {}; }; tools = with haskellPackages; [ ghcid hasktags ]; }