From 3f35c474b8a584b88eae9098fa758a5162dc3390 Mon Sep 17 00:00:00 2001
From: Martin Weinelt <hexa@darmstadt.ccc.de>
Date: Thu, 21 Mar 2024 15:05:45 +0100
Subject: [PATCH] pretix: compile all languages at build time

Pretix wants to build locales according to the user configuration, which
does not exist in our case and leads to certain languages not being
built.

As our packages are immutable, the user config will never be able to
influence them and we therefore must enable all languages at build time.

Closes: #297708
---
 pkgs/by-name/pr/pretix/language-build.patch | 12 ++++++++++++
 pkgs/by-name/pr/pretix/package.nix          |  4 ++++
 2 files changed, 16 insertions(+)
 create mode 100644 pkgs/by-name/pr/pretix/language-build.patch

diff --git a/pkgs/by-name/pr/pretix/language-build.patch b/pkgs/by-name/pr/pretix/language-build.patch
new file mode 100644
index 000000000000..b4043b95446d
--- /dev/null
+++ b/pkgs/by-name/pr/pretix/language-build.patch
@@ -0,0 +1,12 @@
+diff --git a/src/pretix/_build_settings.py b/src/pretix/_build_settings.py
+index d1ea73b84..9e13cdc87 100644
+--- a/src/pretix/_build_settings.py
++++ b/src/pretix/_build_settings.py
+@@ -49,6 +49,7 @@ HAS_MEMCACHED = False
+ HAS_CELERY = False
+ HAS_GEOIP = False
+ SENTRY_ENABLED = False
++LANGUAGES = ALL_LANGUAGES
+ 
+ for entry_point in entry_points(group='pretix.plugin'):
+     INSTALLED_APPS.append(entry_point.module) # noqa: F405
diff --git a/pkgs/by-name/pr/pretix/package.nix b/pkgs/by-name/pr/pretix/package.nix
index dc7fc925f1f5..4527db606e88 100644
--- a/pkgs/by-name/pr/pretix/package.nix
+++ b/pkgs/by-name/pr/pretix/package.nix
@@ -67,6 +67,10 @@ python.pkgs.buildPythonApplication rec {
     # INSTALLED_APPS, so that their static files are collected.
     ./plugin-build.patch
 
+    # Configure django-statici18n to compile all available languages at
+    # build time.
+    ./language-build.patch
+
     (fetchpatch2 {
       # Allow customization of cache and log directory
       # https://github.com/pretix/pretix/pull/3997