diff --git a/pkgs/development/python-modules/Logbook/default.nix b/pkgs/development/python-modules/Logbook/default.nix new file mode 100644 index 00000000000..711f0f5457b --- /dev/null +++ b/pkgs/development/python-modules/Logbook/default.nix @@ -0,0 +1,26 @@ +{ lib, buildPythonPackage, fetchPypi, isPy3k, pytest, mock, brotli }: + +buildPythonPackage rec { + pname = "Logbook"; + version = "1.4.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "1n8wzm2nc99gbvb44y2fbb59sy3c4awkwfgy4pbwv7z892ykw2iw"; + }; + + checkInputs = [ pytest ] ++ lib.optionals (!isPy3k) [ mock ]; + + propagatedBuildInputs = [ brotli ]; + + checkPhase = '' + find tests -name \*.pyc -delete + py.test tests + ''; + + meta = { + homepage = https://pythonhosted.org/Logbook/; + description = "A logging replacement for Python"; + license = lib.licenses.bsd3; + }; +} diff --git a/pkgs/development/python-modules/Nikola/default.nix b/pkgs/development/python-modules/Nikola/default.nix index d0045c9fb7f..bf4171dd3f9 100644 --- a/pkgs/development/python-modules/Nikola/default.nix +++ b/pkgs/development/python-modules/Nikola/default.nix @@ -25,30 +25,39 @@ , markdown , phpserialize , jinja2 +, Babel +, freezegun +, pyyaml +, toml +, notebook }: buildPythonPackage rec { pname = "Nikola"; - version = "7.8.15"; + version = "8.0.1"; # 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 ]; + checkInputs = [ pytest pytestcov mock glibcLocales freezegun ]; propagatedBuildInputs = [ pygments pillow dateutil docutils Mako unidecode lxml Yapsy PyRSS2Gen Logbook blinker setuptools natsort requests piexif markdown phpserialize - jinja2 doit + jinja2 doit Babel pyyaml toml notebook ]; src = fetchPypi { inherit pname version; - sha256 = "182b4b9254f0d710603ba491853429ad6ef3f955f3e718191336b44cfd649000"; + sha256 = "18bq68f9v7xk9ahjl6x4k77yysq5g6g07ng2ndbg35kcsdnw4nk6"; }; + checkPhase = '' + LANG="en_US.UTF-8" LC_ALL="en_US.UTF-8" py.test . + ''; + meta = { homepage = https://getnikola.com/; description = "A modular, fast, simple, static website and blog generator"; diff --git a/pkgs/development/python-modules/brotli/default.nix b/pkgs/development/python-modules/brotli/default.nix new file mode 100644 index 00000000000..5366eeb9c23 --- /dev/null +++ b/pkgs/development/python-modules/brotli/default.nix @@ -0,0 +1,26 @@ +{ lib, buildPythonPackage, fetchFromGitHub, pytest }: + +buildPythonPackage rec { + pname = "brotli"; + version = "1.0.5"; + + # PyPI doesn't contain tests so let's use GitHub + src = fetchFromGitHub { + owner = "google"; + repo = pname; + rev = "v${version}"; + sha256 = "0ssj7mnhpdpk7qnwr49qfd4gxhkmvbli5mhs274pz55cx1xp7xja"; + }; + + checkInputs = [ pytest ]; + + checkPhase = '' + pytest python/tests + ''; + + meta = { + homepage = https://github.com/google/brotli; + description = "Generic-purpose lossless compression algorithm"; + license = lib.licenses.mit; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 6c495cdabde..9c4b6f56f1e 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -258,6 +258,8 @@ in { breathe = callPackage ../development/python-modules/breathe { }; + brotli = callPackage ../development/python-modules/brotli { }; + browser-cookie3 = callPackage ../development/python-modules/browser-cookie3 { }; browsermob-proxy = disabledIf isPy3k (callPackage ../development/python-modules/browsermob-proxy {}); @@ -9315,28 +9317,7 @@ EOF }; }; - Logbook = buildPythonPackage rec { - name = "Logbook-${version}"; - version = "1.0.0"; - - src = pkgs.fetchurl { - url = "mirror://pypi/L/Logbook/${name}.tar.gz"; - sha256 = "0whqbx5p0zkf7gmb5ssnsnhm4kn4drd4x7fbhdi8dnxklqajbnl7"; - }; - - buildInputs = [ self.pytest ] ++ optionals (!isPy3k) [ self.mock ]; - - checkPhase = '' - find tests -name \*.pyc -delete - py.test tests - ''; - - meta = { - homepage = https://pythonhosted.org/Logbook/; - description = "A logging replacement for Python"; - license = licenses.bsd3; - }; - }; + Logbook = callPackage ../development/python-modules/Logbook { }; libversion = callPackage ../development/python-modules/libversion { inherit (pkgs) libversion;