1{ lib
2
3, buildPythonPackage
4, fetchPypi
5, isPyPy
6, pyflakes
7, pep8
8, django
9, django_contrib_comments
10, filebrowser_safe
11, grappelli_safe
12, bleach
13, tzlocal
14, beautifulsoup4
15, requests
16, requests_oauthlib
17, future
18, pillow
19, chardet
20}:
21
22buildPythonPackage rec {
23 version = "4.3.1";
24 pname = "Mezzanine";
25
26 src = fetchPypi {
27 inherit pname version;
28 sha256 = "42c7909953cc5aea91921b47d804b61e14893bf48a2a476ce49a96559a0fa1d3";
29 };
30
31 disabled = isPyPy || lib.versionOlder django.version "1.11"
32 || lib.versionAtLeast django.version "2.0";
33
34 buildInputs = [ pyflakes pep8 ];
35 propagatedBuildInputs = [ django django_contrib_comments filebrowser_safe grappelli_safe bleach tzlocal beautifulsoup4 requests requests_oauthlib future pillow chardet ];
36
37 # Tests Fail Due to Syntax Warning, Fixed for v3.1.11+
38 doCheck = false;
39 # sed calls will be unecessary in v3.1.11+
40 preConfigure = ''
41 sed -i 's/==/>=/' setup.py
42 '';
43
44 LC_ALL="en_US.UTF-8";
45
46 meta = with lib; {
47 description = ''
48 A content management platform built using the Django framework
49 '';
50 longDescription = ''
51 Mezzanine is a powerful, consistent, and flexible content
52 management platform. Built using the Django framework, Mezzanine
53 provides a simple yet highly extensible architecture that
54 encourages diving in and hacking on the code. Mezzanine is BSD
55 licensed and supported by a diverse and active community.
56
57 In some ways, Mezzanine resembles tools such as Wordpress that
58 provide an intuitive interface for managing pages, blog posts,
59 form data, store products, and other types of content. But
60 Mezzanine is also different. Unlike many other platforms that
61 make extensive use of modules or reusable applications,
62 Mezzanine provides most of its functionality by default. This
63 approach yields a more integrated and efficient platform.
64 '';
65 homepage = "http://mezzanine.jupo.org/";
66 downloadPage = "https://github.com/stephenmcd/mezzanine/releases";
67 license = licenses.free;
68 maintainers = with maintainers; [ prikhi ];
69 platforms = platforms.unix;
70 # mezzanine requires django-1.11. Consider overriding python package set to use django_1_11"
71 broken = versionOlder django.version "1.11" || versionAtLeast django.version "2.0";
72 };
73
74}