git.iko.soy/typeable/cabal2nix
on master help sign in
Agda: new postInstall for version 2.5, which has new builtin modules
commit3e976b2c43cad431c9c6d582ef6dc9e5700dd33a authorlaMudri <lamudri@gmail.com> dateFri 27 May 2016, 23:41 (10 years ago) parentea0d850
1 file changed+17−1
distribution-nixpkgs/src/Distribution/Nixpkgs/Haskell/FromCabal/PostProcess.hs+17−1
distribution-nixpkgs/src/Distribution/Nixpkgs/Haskell/FromCabal/PostProcess.hs+17−1
@@ -36,7 +36,8 @@ hooks :: [(Dependency, Derivation -> Derivation)]
3636hooks =
3737 [ ("alex", set (executableDepends . tool . contains (bind "self.happy")) True)
3838 , ("alex < 3.1.5", set (testDepends . tool . contains (pkg "perl")) True)
39− , ("Agda", set (executableDepends . tool . contains (pkg "emacs")) True . set phaseOverrides agdaPostInstall)
39+ , ("Agda < 2.5", set (executableDepends . tool . contains (pkg "emacs")) True . set phaseOverrides agdaPostInstall)
40+ , ("Agda >= 2.5", set (executableDepends . tool . contains (pkg "emacs")) True . set phaseOverrides agda25PostInstall)
4041 , ("bindings-GLFW", over (libraryDepends . system) (Set.union (Set.fromList [bind "pkgs.xorg.libXext", bind "pkgs.xorg.libXfixes"])))
4142 , ("bustle", set (libraryDepends . pkgconfig . contains (binding # ("system-glib", path # ["pkgs","glib"]))) True)
4243 , ("cabal-install", set phaseOverrides cabalInstallPostInstall)
@@ -204,6 +205,21 @@ agdaPostInstall = unlines
204205 , "'';"
205206 ]
206207
208+agda25PostInstall :: String
209+agda25PostInstall = unlines
210+ [ "postInstall = ''"
211+ , " files=($out/share/*-ghc-*/Agda-*/lib/prim/Agda/{Primitive.agda,Builtin/*.agda})"
212+ -- Separate loops to avoid internal error
213+ , " for f in \"''${files[@]}\" ; do"
214+ , " $out/bin/agda $f"
215+ , " done"
216+ , " for f in \"''${files[@]}\" ; do"
217+ , " $out/bin/agda -c --no-main $f"
218+ , " done"
219+ , " $out/bin/agda-mode compile"
220+ , "'';"
221+ ]
222+
207223stackOverrides :: String
208224stackOverrides = unlines
209225 [ "preCheck = \"export HOME=$TMPDIR\";"