summaryrefslogtreecommitdiff
path: root/2024/OCaml/shell.nix
diff options
context:
space:
mode:
authorDJ O'Leary <dijitol@proton.me>2025-03-03 00:56:33 +0100
committerDJ O'Leary <dijitol@proton.me>2025-03-03 00:56:33 +0100
commite24effa8fd3574e9d396be0e1a47f101c27c0a60 (patch)
tree793896d20384facd10d925e09f8f0dd89c930cce /2024/OCaml/shell.nix
perf: Merge Advent of Code year specific repos
Diffstat (limited to '2024/OCaml/shell.nix')
-rw-r--r--2024/OCaml/shell.nix42
1 files changed, 42 insertions, 0 deletions
diff --git a/2024/OCaml/shell.nix b/2024/OCaml/shell.nix
new file mode 100644
index 0000000..aa955b6
--- /dev/null
+++ b/2024/OCaml/shell.nix
@@ -0,0 +1,42 @@
+{ }:
+let
+ config = {
+ allowUnfree = true;
+ };
+ pkgs = import <nixpkgs> { inherit config; };
+
+ # choose the ocaml version you want to use
+ ocamlPackages = pkgs.ocaml-ng.ocamlPackages_5_2;
+in
+pkgs.mkShell {
+ # build tools
+ nativeBuildInputs = with ocamlPackages; [
+ pkgs.opam
+ ocaml
+ findlib
+ dune_3
+ ];
+ # dependencies
+ buildInputs = with ocamlPackages; [
+ bisect_ppx
+ findlib
+ menhir
+ ocaml-lsp
+ earlybird
+ ocamlformat
+ ocamlgraph
+ odoc
+ ounit2
+ re2
+ utop
+
+ pkgs.gh # GitHub CLI
+
+ # Fallback language
+ pkgs.php84
+ pkgs.intelephense
+ pkgs.php84Packages.php-cs-fixer
+ pkgs.php84Packages.phpstan
+ pkgs.nodejs_18
+ ];
+}