linol/ocamlformat.nix
Simon Cruanes 7fbc187548 Squashed 'thirdparty/lsp/' content from commit aae69863
git-subtree-dir: thirdparty/lsp
git-subtree-split: aae6986391a8519de3da6a7a341f2bd3376e0d2f
2025-04-10 15:44:25 -04:00

18 lines
707 B
Nix

let
pkgs = (import <nixpkgs> { });
inherit (pkgs) stdenv lib;
ocamlformat =
let
ocamlformat_version =
let
lists = pkgs.lib.lists;
strings = pkgs.lib.strings;
ocamlformat_config = strings.splitString "\n" (builtins.readFile ./.ocamlformat);
prefix = "version=";
ocamlformat_version_pred = line: strings.hasPrefix prefix line;
version_line = lists.findFirst ocamlformat_version_pred "not_found" ocamlformat_config;
version = strings.removePrefix prefix version_line;
in
builtins.replaceStrings ["."] ["_"] version;
in builtins.getAttr ("ocamlformat_" + ocamlformat_version) pkgs;
in ocamlformat