|
|
|
@ -1,20 +1,42 @@ |
|
|
|
|
{ lib, buildPythonPackage, fetchFromGitHub, isPy27 |
|
|
|
|
, glibcLocales, git |
|
|
|
|
, mock, nose, markdown, lxml, typogrify |
|
|
|
|
, jinja2, pygments, docutils, pytz, unidecode, six, python-dateutil, feedgenerator |
|
|
|
|
, blinker, pillow, beautifulsoup4, markupsafe, pandoc }: |
|
|
|
|
{ lib |
|
|
|
|
, beautifulsoup4 |
|
|
|
|
, blinker |
|
|
|
|
, buildPythonPackage |
|
|
|
|
, docutils |
|
|
|
|
, feedgenerator |
|
|
|
|
, fetchFromGitHub |
|
|
|
|
, git |
|
|
|
|
, glibcLocales |
|
|
|
|
, isPy27 |
|
|
|
|
, jinja2 |
|
|
|
|
, lxml |
|
|
|
|
, markdown |
|
|
|
|
, markupsafe |
|
|
|
|
, mock |
|
|
|
|
, pytestCheckHook |
|
|
|
|
, pandoc |
|
|
|
|
, pillow |
|
|
|
|
, pygments |
|
|
|
|
, python-dateutil |
|
|
|
|
, pythonOlder |
|
|
|
|
, pytz |
|
|
|
|
, rich |
|
|
|
|
, pytest-xdist |
|
|
|
|
, six |
|
|
|
|
, typogrify |
|
|
|
|
, unidecode |
|
|
|
|
}: |
|
|
|
|
|
|
|
|
|
buildPythonPackage rec { |
|
|
|
|
pname = "pelican"; |
|
|
|
|
version = "4.5.4"; |
|
|
|
|
|
|
|
|
|
disabled = isPy27; |
|
|
|
|
version = "4.6.0"; |
|
|
|
|
disabled = pythonOlder "3.6"; |
|
|
|
|
|
|
|
|
|
src = fetchFromGitHub { |
|
|
|
|
owner = "getpelican"; |
|
|
|
|
repo = "pelican"; |
|
|
|
|
repo = pname; |
|
|
|
|
rev = version; |
|
|
|
|
sha256 = "08l8kk3c7ca1znxmgdmfgzn28dzjcziwflzq80fn9zigqj0y7fi8"; |
|
|
|
|
sha256 = "0xrz0cmjyaylr81rmy5i3qbp4ms1iwh0gpb07q1dwljffb8xzbhr"; |
|
|
|
|
# Remove unicode file names which leads to different checksums on HFS+ |
|
|
|
|
# vs. other filesystems because of unicode normalisation. |
|
|
|
|
extraPostFetch = '' |
|
|
|
@ -22,18 +44,6 @@ buildPythonPackage rec { |
|
|
|
|
''; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
doCheck = true; |
|
|
|
|
|
|
|
|
|
# Exclude custom locale test, which files were removed above to fix the source checksum |
|
|
|
|
checkPhase = '' |
|
|
|
|
nosetests -s \ |
|
|
|
|
--exclude=test_basic_generation_works \ |
|
|
|
|
--exclude=test_custom_generation_works \ |
|
|
|
|
--exclude=test_custom_locale_generation_works \ |
|
|
|
|
--exclude=test_log_filter \ |
|
|
|
|
pelican |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
buildInputs = [ |
|
|
|
|
glibcLocales |
|
|
|
|
pandoc |
|
|
|
@ -44,21 +54,46 @@ buildPythonPackage rec { |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
propagatedBuildInputs = [ |
|
|
|
|
jinja2 pygments docutils pytz unidecode six python-dateutil feedgenerator |
|
|
|
|
blinker pillow beautifulsoup4 markupsafe lxml |
|
|
|
|
beautifulsoup4 |
|
|
|
|
blinker |
|
|
|
|
docutils |
|
|
|
|
feedgenerator |
|
|
|
|
jinja2 |
|
|
|
|
lxml |
|
|
|
|
markupsafe |
|
|
|
|
pillow |
|
|
|
|
pygments |
|
|
|
|
python-dateutil |
|
|
|
|
pytz |
|
|
|
|
rich |
|
|
|
|
six |
|
|
|
|
unidecode |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
checkInputs = [ |
|
|
|
|
nose |
|
|
|
|
pytest-xdist |
|
|
|
|
pytestCheckHook |
|
|
|
|
pandoc |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
postPatch= '' |
|
|
|
|
postPatch = '' |
|
|
|
|
substituteInPlace pelican/tests/test_pelican.py \ |
|
|
|
|
--replace "'git'" "'${git}/bin/git'" |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
LC_ALL="en_US.UTF-8"; |
|
|
|
|
pytestFlagsArray = [ |
|
|
|
|
# DeprecationWarning: 'jinja2.Markup' is deprecated and... |
|
|
|
|
"-W ignore::DeprecationWarning" |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
disabledTests = [ |
|
|
|
|
# AssertionError |
|
|
|
|
"test_basic_generation_works" |
|
|
|
|
"test_custom_generation_works" |
|
|
|
|
"test_custom_locale_generation_works" |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
LC_ALL = "en_US.UTF-8"; |
|
|
|
|
|
|
|
|
|
# We only want to patch shebangs in /bin, and not those |
|
|
|
|
# of the project scripts that are created by Pelican. |
|
|
|
@ -69,8 +104,10 @@ buildPythonPackage rec { |
|
|
|
|
patchShebangs $out/bin |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
pythonImportsCheck = [ "pelican" ]; |
|
|
|
|
|
|
|
|
|
meta = with lib; { |
|
|
|
|
description = "A tool to generate a static blog from reStructuredText or Markdown input files"; |
|
|
|
|
description = "Static site generator that requires no database or server-side logic"; |
|
|
|
|
homepage = "http://getpelican.com/"; |
|
|
|
|
license = licenses.agpl3; |
|
|
|
|
maintainers = with maintainers; [ offline prikhi ]; |
|
|
|
|