python3Packages.Nikola: fix build
This commit is contained in:
parent
195ee1e14b
commit
ba2cac52bd
|
@ -1,79 +1,112 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, aiohttp
|
||||
, Babel
|
||||
, blinker
|
||||
, buildPythonPackage
|
||||
, isPy3k
|
||||
, fetchPypi
|
||||
, doit
|
||||
, glibcLocales
|
||||
, pytest
|
||||
, pytestcov
|
||||
, mock
|
||||
, pygments
|
||||
, pillow
|
||||
, dateutil
|
||||
, docutils
|
||||
, Mako
|
||||
, unidecode
|
||||
, lxml
|
||||
, Yapsy
|
||||
, PyRSS2Gen
|
||||
, Logbook
|
||||
, blinker
|
||||
, natsort
|
||||
, requests
|
||||
, piexif
|
||||
, markdown
|
||||
, phpserialize
|
||||
, jinja2
|
||||
, Babel
|
||||
, doit
|
||||
, fetchPypi
|
||||
, freezegun
|
||||
, toml
|
||||
, ghp-import
|
||||
, hsluv
|
||||
, html5lib
|
||||
, ipykernel
|
||||
, jinja2
|
||||
, lxml
|
||||
, Mako
|
||||
, markdown
|
||||
, micawber
|
||||
, mock
|
||||
, natsort
|
||||
, notebook
|
||||
, phpserialize
|
||||
, piexif
|
||||
, pillow
|
||||
, pygal
|
||||
, pygments
|
||||
, pyphen
|
||||
, PyRSS2Gen
|
||||
, pytestCheckHook
|
||||
, pythonOlder
|
||||
, requests
|
||||
, ruamel_yaml
|
||||
, aiohttp
|
||||
, stdenv
|
||||
, toml
|
||||
, typogrify
|
||||
, unidecode
|
||||
, watchdog
|
||||
, Yapsy
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "Nikola";
|
||||
version = "8.1.3";
|
||||
|
||||
# Nix contains only Python 3 supported version of doit, which is a dependency
|
||||
# of Nikola. Python 2 support would require older doit 0.29.0 (which on the
|
||||
# other hand doesn't support Python 3.3). So, just disable Python 2.
|
||||
disabled = !isPy3k;
|
||||
|
||||
checkInputs = [ pytest pytestcov mock glibcLocales freezegun ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
# requirements.txt
|
||||
doit pygments pillow dateutil docutils Mako markdown unidecode
|
||||
lxml Yapsy PyRSS2Gen Logbook blinker natsort requests piexif Babel
|
||||
# requirements-extras.txt
|
||||
phpserialize jinja2 toml notebook ruamel_yaml aiohttp watchdog
|
||||
];
|
||||
disabled = pythonOlder "3.5";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "05eac356bb4273cdd05d2dd6ad676226133496c457af91987c3f0d40e2fe57ef";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
# upstream added bound so that requires.io doesn't send mails about update
|
||||
# nikola should work with markdown 3.0: https://github.com/getnikola/nikola/pull/3175#issue-220147596
|
||||
sed -i 's/Markdown>.*/Markdown/' requirements.txt
|
||||
propagatedBuildInputs = [
|
||||
aiohttp
|
||||
Babel
|
||||
blinker
|
||||
dateutil
|
||||
docutils
|
||||
doit
|
||||
ghp-import
|
||||
hsluv
|
||||
html5lib
|
||||
ipykernel
|
||||
jinja2
|
||||
lxml
|
||||
Mako
|
||||
markdown
|
||||
micawber
|
||||
natsort
|
||||
notebook
|
||||
phpserialize
|
||||
piexif
|
||||
pillow
|
||||
pygal
|
||||
pygments
|
||||
pyphen
|
||||
PyRSS2Gen
|
||||
requests
|
||||
ruamel_yaml
|
||||
toml
|
||||
typogrify
|
||||
unidecode
|
||||
watchdog
|
||||
Yapsy
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
freezegun
|
||||
mock
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.cfg \
|
||||
--replace "--cov nikola --cov-report term-missing" ""
|
||||
'';
|
||||
|
||||
checkPhase = ''
|
||||
LANG="en_US.UTF-8" LC_ALL="en_US.UTF-8" py.test .
|
||||
'';
|
||||
disabledTests = [
|
||||
# AssertionError
|
||||
"test_compiling_markdown"
|
||||
];
|
||||
|
||||
meta = {
|
||||
pythonImportsCheck = [ "nikola" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Static website and blog generator";
|
||||
homepage = "https://getnikola.com/";
|
||||
description = "A modular, fast, simple, static website and blog generator";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ jluttine ];
|
||||
# all tests fail
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ jluttine ];
|
||||
# All tests fail
|
||||
broken = stdenv.isDarwin;
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue