diff --git a/pkgs/development/python-modules/pelican/default.nix b/pkgs/development/python-modules/pelican/default.nix new file mode 100644 index 000000000000..72901881b039 --- /dev/null +++ b/pkgs/development/python-modules/pelican/default.nix @@ -0,0 +1,53 @@ +{ stdenv, buildPythonPackage, fetchFromGitHub, isPy26 +, glibcLocales, pandoc, git +, mock, nose, markdown, lxml, typogrify +, jinja2, pygments, docutils, pytz, unidecode, six, dateutil, feedgenerator +, blinker, pillow, beautifulsoup4, markupsafe }: + +buildPythonPackage rec { + name = "pelican-${version}"; + version = "3.7.1"; + disabled = isPy26; + + src = fetchFromGitHub { + owner = "getpelican"; + repo = "pelican"; + rev = version; + sha256 = "0nkxrb77k2bra7bqckg7f5k73wk98hcbz7rimxl8sw05b2bvd62g"; + }; + + doCheck = true; + + checkPhase = '' + python -Wd -m unittest discover + ''; + + buildInputs = [ + glibcLocales + pandoc + git + mock + nose + markdown + typogrify + ]; + + propagatedBuildInputs = [ + jinja2 pygments docutils pytz unidecode six dateutil feedgenerator + blinker pillow beautifulsoup4 markupsafe lxml + ]; + + postPatch= '' + substituteInPlace pelican/tests/test_pelican.py \ + --replace "'git'" "'${git}/bin/git'" + ''; + + LC_ALL="en_US.UTF-8"; + + meta = with stdenv.lib; { + description = "A tool to generate a static blog from reStructuredText or Markdown input files"; + homepage = "http://getpelican.com/"; + license = licenses.agpl3; + maintainers = with maintainers; [ offline prikhi garbas ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 51d72d0508fd..7da7f2a51dea 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -17870,54 +17870,8 @@ in { }; }; - pelican = buildPythonPackage rec { - name = "pelican-${version}"; - version = "3.7.1"; - disabled = isPy26; - - src = pkgs.fetchFromGitHub { - owner = "getpelican"; - repo = "pelican"; - rev = version; - sha256 = "0nkxrb77k2bra7bqckg7f5k73wk98hcbz7rimxl8sw05b2bvd62g"; - }; - - doCheck = true; - - # https://github.com/getpelican/pelican/pull/2004#issuecomment-247610716 - checkPhase = '' - ${python.interpreter} -Wd -m unittest discover - ''; - - buildInputs = with self; [ - pkgs.glibcLocales - pkgs.pandoc - pkgs.git - mock - nose - markdown - beautifulsoup4 - lxml - typogrify - ]; - - propagatedBuildInputs = with self; [ - jinja2 pygments docutils pytz unidecode six dateutil feedgenerator - blinker pillow beautifulsoup4 markupsafe lxml - ]; - - postPatch= '' - sed -i -e "s|'git'|'${pkgs.git}/bin/git'|" pelican/tests/test_pelican.py - ''; - - LC_ALL="en_US.UTF-8"; - - meta = { - description = "A tool to generate a static blog from reStructuredText or Markdown input files"; - homepage = "http://getpelican.com/"; - license = licenses.agpl3; - maintainers = with maintainers; [ offline prikhi garbas ]; - }; + pelican = callPackage ../development/python-modules/pelican { + inherit (pkgs) glibcLocales pandoc git; }; pep8 = buildPythonPackage rec {