summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authorMarius Bakke <marius@gnu.org>2022-01-20 18:45:47 +0100
committerMarius Bakke <marius@gnu.org>2022-01-21 00:35:06 +0100
commit3e10dcabc056852dba62064bd0471f431d828dc3 (patch)
tree4d244ce51e8675019071f43f0499a0edd36440c0 /gnu/packages
parentf001f30bdf371632b554792ac526a36a92ffa60c (diff)
downloadguix-3e10dcabc056852dba62064bd0471f431d828dc3.tar.gz
gnu: python-django: Add a native search path for TZDIR.
* gnu/packages/django.scm (python-django-4.0)[native-search-paths]: Add TZDIR
specification.
(django-3.2)[native-search-paths]: Don't inherit.
(python-django-rest-framework): Don't set TZDIR directly.
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/django.scm12
1 files changed, 9 insertions, 3 deletions
diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm
index d5f69b22da..410f4c59f4 100644
--- a/gnu/packages/django.scm
+++ b/gnu/packages/django.scm
@@ -118,6 +118,13 @@
            ;; This input is not strictly required, but in practice many Django
            ;; libraries need it for test suites and similar.
            python-jinja2))
+    (native-search-paths
+     ;; Set TZDIR when 'tzdata' is available so that timezone functionality
+     ;; works (mostly) out of the box in containerized environments.
+     ;; Note: This search path actually belongs to 'glibc'.
+     (list (search-path-specification
+            (variable "TZDIR")
+            (files '("share/zoneinfo")))))
     (home-page "https://www.djangoproject.com/")
     (synopsis "High-level Python Web framework")
     (description
@@ -138,6 +145,7 @@ to the @dfn{don't repeat yourself} (DRY) principle.")
               (sha256
                (base32
                 "0xbyl9fh9lk5hiwpw46s6hz98gs0fixrpq3myj5hh6vbbnz4mjb9"))))
+    (native-search-paths '())           ;no need for TZDIR
     (propagated-inputs
      (modify-inputs (package-propagated-inputs python-django-4.0)
        ;; Django 4.0 deprecated pytz in favor of Pythons built-in zoneinfo.
@@ -1033,9 +1041,7 @@ Django projects, which allows association of a number of tags with any
          (replace 'check
            (lambda* (#:key tests? inputs #:allow-other-keys)
              (if tests?
-                 (begin
-                   (setenv "TZDIR" (search-input-directory inputs "share/zoneinfo"))
-                   (invoke "python" "runtests.py"))
+                 (invoke "python" "runtests.py")
                  (format #t "test suite not run~%")))))))
     (native-inputs
      (list python-pytest python-pytest-django tzdata-for-tests))