{ pkgs ? import (builtins.fetchTarball { url = "https://github.com/NixOS/nixpkgs/archive/master.tar.gz"; }) {} }: let ocamlPackages = pkgs.ocaml-ng.ocamlPackages_5_4.overrideScope (self: super: { htmlit = ocamlPackages.buildTopkgPackage rec { pname = "htmlit"; version = "0.2.0"; minimalOCamlVersion = "4.14.0"; src = pkgs.fetchzip { url = "https://erratique.ch/software/htmlit/releases/htmlit-${version}.tbz"; hash = "sha256-vE6XY7INMCwQztZqKhJaxpNF0o5+NeutJM5XobshClE="; }; }; }); in pkgs.mkShell { nativeBuildInputs = with ocamlPackages; [ dune_3 findlib merlin ocaml ocamlformat odoc ]; buildInputs = with ocamlPackages; [ httpcats js_of_ocaml-compiler miou ptime htmlit scfg tyxml uri uuidm directories ]; }