diff options
Diffstat (limited to 'pkgs/by-name/md')
-rw-r--r-- | pkgs/by-name/md/mdformat/package.nix | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/pkgs/by-name/md/mdformat/package.nix b/pkgs/by-name/md/mdformat/package.nix new file mode 100644 index 000000000000..24cbd66d864c --- /dev/null +++ b/pkgs/by-name/md/mdformat/package.nix @@ -0,0 +1,28 @@ +{ lib +, python3 +, runCommand +}: + +let + python = python3; + + # selector is a function mapping pythonPackages to a list of plugins + # e.g. `mdformat.withPlugins (ps: with ps; [ mdformat-footnote ])` + withPlugins = selector: runCommand "mdformat-wrapped" { + inherit (python.pkgs.mdformat) pname version meta; + + nativeBuildInputs = [ + python.pkgs.wrapPython + ]; + + plugins = selector python.pkgs; + + passthru = { + inherit withPlugins; + }; + } '' + buildPythonPath $plugins + makeWrapper ${lib.getExe python.pkgs.mdformat} $out/bin/mdformat \ + --suffix PYTHONPATH : "$program_PYTHONPATH" + ''; +in withPlugins (ps: [ ]) |