78 lines
1.6 KiB
Nix
78 lines
1.6 KiB
Nix
|
{ lib
|
||
|
, buildPythonPackage
|
||
|
, fetchFromGitHub
|
||
|
, fetchpatch
|
||
|
, pytestCheckHook
|
||
|
, markdown
|
||
|
, pyyaml
|
||
|
, pygments
|
||
|
}:
|
||
|
|
||
|
let
|
||
|
extensions = [
|
||
|
"arithmatex"
|
||
|
"b64"
|
||
|
"betterem"
|
||
|
"caret"
|
||
|
"critic"
|
||
|
"details"
|
||
|
"emoji"
|
||
|
"escapeall"
|
||
|
"extra"
|
||
|
"highlight"
|
||
|
"inlinehilite"
|
||
|
"keys"
|
||
|
"magiclink"
|
||
|
"mark"
|
||
|
"pathconverter"
|
||
|
"progressbar"
|
||
|
"saneheaders"
|
||
|
"smartsymbols"
|
||
|
"snippets"
|
||
|
"striphtml"
|
||
|
"superfences"
|
||
|
"tabbed"
|
||
|
"tasklist"
|
||
|
"tilde"
|
||
|
];
|
||
|
in
|
||
|
buildPythonPackage rec {
|
||
|
pname = "pymdown-extensions";
|
||
|
version = "9.1";
|
||
|
format = "pyproject";
|
||
|
|
||
|
src = fetchFromGitHub {
|
||
|
owner = "facelessuser";
|
||
|
repo = "pymdown-extensions";
|
||
|
rev = version;
|
||
|
sha256 = "sha256-II8Po8144h3wPFrzMbOB/qiCm2HseYrcZkyIZFGT+ek=";
|
||
|
};
|
||
|
|
||
|
patches = [
|
||
|
# this patch is needed to allow tests to pass for later versions of the
|
||
|
# markdown dependency
|
||
|
#
|
||
|
# it can be removed after the next pymdown-extensions release
|
||
|
(fetchpatch {
|
||
|
url = "https://github.com/facelessuser/pymdown-extensions/commit/8ee5b5caec8f9373e025f50064585fb9d9b71f86.patch";
|
||
|
sha256 = "sha256-jTHNcsV0zL0EkSTSj8zCGXXtpUaLnNPldmL+krZj3Gk=";
|
||
|
})
|
||
|
];
|
||
|
|
||
|
propagatedBuildInputs = [ markdown pygments ];
|
||
|
|
||
|
checkInputs = [
|
||
|
pytestCheckHook
|
||
|
pyyaml
|
||
|
];
|
||
|
|
||
|
pythonImportsCheck = map (ext: "pymdownx.${ext}") extensions;
|
||
|
|
||
|
meta = with lib; {
|
||
|
description = "Extensions for Python Markdown";
|
||
|
homepage = "https://facelessuser.github.io/pymdown-extensions/";
|
||
|
license = with licenses; [ mit bsd2 ];
|
||
|
maintainers = with maintainers; [ cpcloud ];
|
||
|
};
|
||
|
}
|