Something went wrong. Try again.
nix // yocaml
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960{ outputs = { nixpkgs, parts, systems, ... } @ inputs: parts.lib.mkFlake { inherit inputs; } { systems = import systems;
perSystem = { lib, pkgs, system, self', ... }: { _module.args.pkgs = import nixpkgs { inherit system; overlays = [ (_: prev: { ocamlPackages = prev.ocaml-ng.ocamlPackages.overrideScope (ocamlFinal: _: (with lib; genAttrs (attrNames (builtins.readDir ./pkgs)) (name: ocamlFinal.callPackage ./pkgs/${name} { }))); }) ]; };
devShells.default = pkgs.mkShell { inputsFrom = with self'.packages; [ omd ysun ]; packages = with pkgs; [ direnv git nix-direnv nixpkgs-fmt ] ++ (with ocamlPackages; [ ocaml-lsp ocaml-print-intf ocamlformat utop ]); };
formatter = pkgs.writeShellScriptBin "formatter" '' set -eoux pipefail shopt -s globstar pushd "$(${lib.getExe pkgs.git} rev-parse --show-toplevel)" > /dev/null ${lib.getExe pkgs.deno} fmt pages ${lib.getExe pkgs.nixpkgs-fmt} . ${lib.getExe pkgs.ocamlPackages.dune} fmt popd '';
packages = with lib; fix (self: ( (genAttrs (attrNames (builtins.readDir ./pkgs)) (name: pkgs.ocamlPackages.${name})) // { default = self.ysun; } )); }; };
inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable-small"; parts.url = "github:hercules-ci/flake-parts"; parts.inputs.nixpkgs-lib.follows = "nixpkgs"; systems.url = "github:nix-systems/triplet"; };}