Date: 2015-06-22
Categories: misc

Working with the nix package manager: OCaml, Isabelle and Lem

Recently I was packaging various pieces of code using the nix package manager https://nixos.org/nix/.

There is already a package for Isabelle. However, I had to modify this along the lines of: https://github.com/tomjridge/ocaml_btree/tree/master/.nix/isabelle.

There is an example package for lem here: https://github.com/tomjridge/ocaml_btree/tree/master/.nix/lem

The main problem I found is that it seems very difficult to get Isabelle to reuse heaps between packages. The eventual path I chose involves dropping into a nix-shell, and building the heaps in ~/.isabelle, rather than trying to reuse e.g. system heaps, or heaps from other packages. I assume that Isabelle somehow won't allow heap images to be reused across environments (perhaps there are hardcoded paths in heap images or something).

Anyway, to see how this all hangs together, try making the above ocaml_btree project following the README.md: https://github.com/tomjridge/ocaml_btree



Related articles:

  • 2017-05-15 PhD viva: congratulations to Thomas Gransden
  • 2017-01-23 Daniel Morrison PhD
  • 2016-10-20 The Tree of Life (film)
  • 2016-10-12 Outreach talk at Uppingham School
  • 2016-06-05 Do not buy TP-Link products
  • 2016-05-11 The meaning of IELTS 6.0
  • 2015-09-11 Richard Hamming 1968 Turing Award lecture quote
  • 2015-06-22 Working with the nix package manager: OCaml, Isabelle and Lem
  • 2015-06-17 J. M. Coetzee novel, Youth
  • 2015-01-23 OCaml dependency graph via graphviz and dot file