25 lines
817 B
Nix
25 lines
817 B
Nix
|
{ stdenv, haskellPackages, cabal-install }:
|
||
|
|
||
|
haskellPackages.shellFor {
|
||
|
packages = p: [ p.database-id-class p.constraints-extras ];
|
||
|
nativeBuildInputs = [ cabal-install ];
|
||
|
phases = [ "unpackPhase" "buildPhase" "installPhase" ];
|
||
|
unpackPhase = ''
|
||
|
sourceRoot=$(pwd)/scratch
|
||
|
mkdir -p "$sourceRoot"
|
||
|
cd "$sourceRoot"
|
||
|
tar -xf ${haskellPackages.database-id-class.src}
|
||
|
tar -xf ${haskellPackages.constraints-extras.src}
|
||
|
cp ${builtins.toFile "cabal.project" "packages: database-id-class* constraints-extras*"} cabal.project
|
||
|
'';
|
||
|
buildPhase = ''
|
||
|
export HOME=$(mktemp -d)
|
||
|
mkdir -p $HOME/.cabal
|
||
|
touch $HOME/.cabal/config
|
||
|
cabal v2-build --offline --verbose database-id-class constraints-extras --ghc-options="-O0 -j$NIX_BUILD_CORES"
|
||
|
'';
|
||
|
installPhase = ''
|
||
|
touch $out
|
||
|
'';
|
||
|
}
|