nix-config/pkgs/python-pkgs/recipemd/default.nix
2021-06-27 22:45:34 +02:00

59 lines
1.5 KiB
Nix

{ lib
, buildPythonPackage
, fetchFromGitHub
, pytestCheckHook
, pythonPackages
, installShellFiles
, isPy36
, isPy27
}:
buildPythonPackage rec {
pname = "recipemd";
version = "4.0.7";
disabled = isPy36 || isPy27;
src = fetchFromGitHub {
owner = "tstehr";
repo = "recipemd";
rev = "v4.0.7";
sha256 = "sha256-P65CxTaROfvx9kNSJWa5CiCUHCurTMZx8uUH9W9uK1U=";
};
propagatedBuildInputs = with pythonPackages; [
CommonMark
argcomplete
dataclasses-json
pyparsing
yarl
];
nativeBuildInputs = [ installShellFiles ];
postInstall = ''
${pythonPackages.argcomplete}/bin/register-python-argcomplete -s bash ${pname} > $out/completions.bash
installShellCompletion --bash --name recipemd.bash $out/completions.bash
${pythonPackages.argcomplete}/bin/register-python-argcomplete -s fish ${pname} > $out/completions.fish
installShellCompletion --fish --name recipemd.fish $out/completions.fish
# The version of argcomplete in nixpkgs-stable does not have support for zsh
#${pythonPackages.argcomplete}/bin/register-python-argcomplete -s zsh ${pname} > $out/completions.zsh
#installShellCompletion --zsh --name _recipemd $out/completions.zsh
'';
checkInputs = [
pytestCheckHook
pythonPackages.pytestcov
];
doCheck = true;
meta = with lib; {
description = "Markdown recipe manager, reference implementation of RecipeMD";
homepage = https://recipemd.org;
license = [ licenses.lgpl3Only ];
maintainers = [ maintainers.dadada ];
};
}