stack_picker/flake.nix

53 lines
1.5 KiB
Nix

{
description = "A very basic flake";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
# Add support for ocaml package overlay
ocaml-overlay.url = "github:nix-ocaml/nix-overlays";
ocaml-overlay.inputs.nixpkgs.follows = "nixpkgs";
};
outputs = { self, flake-utils, nixpkgs, ocaml-overlay }:
flake-utils.lib.eachDefaultSystem (system: let
pkgs = import nixpkgs {
inherit system;
overlays = [
ocaml-overlay.overlays.default
];
};
# set ocaml packages' version
ocamlPackages = pkgs.ocaml-ng.ocamlPackages_5_2;
in {
devShell =
#let
#
#in
pkgs.mkShell {
buildInputs = with pkgs; [
ocaml
ocamlPackages.ocaml-lsp
ocamlPackages.findlib
ocamlPackages.ocamlformat
ocamlPackages.ocamlformat-rpc-lib
ocamlPackages.utop
dune_3
# Project deps
ocamlPackages.eio_main
ocamlPackages.caqti-eio
ocamlPackages.caqti-driver-sqlite3
ocamlPackages.ocaml_sqlite3
ocamlPackages.dream
ocamlPackages.cohttp-eio
ocamlPackages.tyxml
ocamlPackages.tyxml-ppx
ocamlPackages.ppx_deriving
ocamlPackages.ppx_deriving_yojson
ocamlPackages.ppx_assert
ocamlPackages.ppx_inline_test
];
};
});
}