nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 beautifulsoup4,
4 buildPythonPackage,
5 django,
6 fetchFromGitHub,
7 fetchpatch2,
8 jinja2,
9 pillow,
10 pytest-django,
11 pytestCheckHook,
12 uv-build,
13}:
14
15buildPythonPackage rec {
16 pname = "django-bootstrap5";
17 version = "26.1";
18 pyproject = true;
19
20 src = fetchFromGitHub {
21 owner = "zostera";
22 repo = "django-bootstrap5";
23 tag = "v${version}";
24 hash = "sha256-kLq1BHN4PKwtAH/TqHn8B697K9Nk5mNMpjUsW5cCrj4=";
25 };
26
27 patches = [
28 (fetchpatch2 {
29 name = "uv-build.patch";
30 url = "https://github.com/zostera/django-bootstrap5/commit/d1d54f5fc8041d2781189321402b4f3937f77913.patch?full_index=1";
31 hash = "sha256-cFOY+pu2TAZXpAipSIQh1nPPC0ipfncvpObcH667+ac=";
32 })
33 ];
34
35 build-system = [ uv-build ];
36
37 dependencies = [ django ];
38
39 optional-dependencies = {
40 jinja = [ jinja2 ];
41 };
42
43 nativeCheckInputs = [
44 beautifulsoup4
45 (django.override { withGdal = true; })
46 pillow
47 pytest-django
48 pytestCheckHook
49 ]
50 ++ lib.concatAttrValues optional-dependencies;
51
52 preCheck = ''
53 export DJANGO_SETTINGS_MODULE=tests.app.settings
54 '';
55
56 disabledTests = [
57 # urllib.error.URLError: <urlopen error [Errno -3] Temporary failure in name resolution>
58 "test_get_bootstrap_setting"
59 ];
60
61 pythonImportsCheck = [ "django_bootstrap5" ];
62
63 meta = {
64 description = "Bootstrap 5 integration with Django";
65 homepage = "https://github.com/zostera/django-bootstrap5";
66 changelog = "https://github.com/zostera/django-bootstrap5/blob/${src.tag}/CHANGELOG.md";
67 license = lib.licenses.bsd3;
68 maintainers = with lib.maintainers; [ netali ];
69 };
70}