-
Notifications
You must be signed in to change notification settings - Fork 0
/
shell.nix
36 lines (33 loc) · 950 Bytes
/
shell.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
with import ./pinned-package-sets.nix;
let
mmpApp = { outPath = ./.; name = "mmp-website"; };
rubyEnv = pkgs1903Beta.bundlerEnv {
name = "mmp-website";
ruby = pkgs1903Beta.ruby_2_6;
gemdir = ./.;
gemConfig = pkgs1903Beta.defaultGemConfig // {
tzinfo = attrs: {
preBuild = ''
sed -i 's!s\.files.*!!' tzinfo.gemspec
'';
};
};
};
haskell = pkgs1803.haskellPackages.callCabal2nix "mmp-website" ./. {};
in pkgs1803.lib.overrideDerivation haskell.env (old: {
name = "mmp-website";
src = mmpApp;
buildInputs = old.buildInputs ++ (with pkgs1803; [
rubyEnv
rubyEnv.wrappedRuby
sqlite
nodejs
pkgs1903Beta.elmPackages.elm
pkgs1903Beta.elmPackages.elm-format
cabal-install
]);
shellHook = ''
export PATH=./node_modules/.bin:$PATH
${pkgs1803.cabal-install}/bin/cabal --config-file=/dev/null configure --cabal-file="$src/mmp-website.cabal"
'';
})