From 4e083f9882a81f30e06b0dee7183263d71fc0883 Mon Sep 17 00:00:00 2001
From: Nico Alt <nicoalt@posteo.org>
Date: Wed, 23 Sep 2020 12:27:02 +0200
Subject: [PATCH] Backport gettext.pgettext and drop Python 3.8 requirement

Fixes #68.
---
 briar-gtk/briar_gtk/utils.py                   | 13 +++++++++++++
 briar-gtk/briar_gtk/widgets/about_dialog.py    |  3 +--
 briar-gtk/briar_gtk/widgets/private_message.py |  3 ++-
 debian/control                                 |  4 ++--
 4 files changed, 18 insertions(+), 5 deletions(-)
 create mode 100644 briar-gtk/briar_gtk/utils.py

diff --git a/briar-gtk/briar_gtk/utils.py b/briar-gtk/briar_gtk/utils.py
new file mode 100644
index 0000000..634beb1
--- /dev/null
+++ b/briar-gtk/briar_gtk/utils.py
@@ -0,0 +1,13 @@
+# Copyright (c) 2020 Nico Alt
+# SPDX-License-Identifier: AGPL-3.0-only
+# License-Filename: LICENSE.md
+
+import gettext
+
+
+# pylint: disable=unused-argument
+def pgettext(context, message):
+    """
+    Backport of `gettext.pgettext` which is only available in Python 3.8+
+    """
+    return gettext.gettext(message)
diff --git a/briar-gtk/briar_gtk/widgets/about_dialog.py b/briar-gtk/briar_gtk/widgets/about_dialog.py
index ae96bae..b03ffff 100644
--- a/briar-gtk/briar_gtk/widgets/about_dialog.py
+++ b/briar-gtk/briar_gtk/widgets/about_dialog.py
@@ -4,11 +4,10 @@
 
 import os
 
-from gettext import pgettext as _t
-
 from gi.repository import Gtk
 
 from briar_gtk.define import APP, RESOURCES_DIR
+from briar_gtk.utils import pgettext as _t
 
 
 class AboutDialogWidget():
diff --git a/briar-gtk/briar_gtk/widgets/private_message.py b/briar-gtk/briar_gtk/widgets/private_message.py
index df8c293..878428c 100644
--- a/briar-gtk/briar_gtk/widgets/private_message.py
+++ b/briar-gtk/briar_gtk/widgets/private_message.py
@@ -6,10 +6,11 @@
 # https://gitlab.gnome.org/GNOME/fractal/-/tags/4.2.2
 
 from datetime import datetime
-from gettext import pgettext as _t
 
 from gi.repository import Gtk
 
+from briar_gtk.utils import pgettext as _t
+
 
 class PrivateMessageWidget(Gtk.ListBoxRow):
 
diff --git a/debian/control b/debian/control
index b90fc6a..1f6f149 100644
--- a/debian/control
+++ b/debian/control
@@ -8,7 +8,7 @@ Build-Depends:
  gettext,
  libhandy-1-dev,
  meson,
- python3-all (>= 3.8),
+ python3-all,
  python3-gi
 Standards-Version: 4.5.0
 Rules-Requires-Root: no
@@ -22,7 +22,7 @@ Architecture: all
 Depends:
  ${misc:Depends},
  gir1.2-handy-1 (>= 0.90.0),
- python3 (>= 3.8),
+ python3,
  python3-briar-wrapper(>= 0.0.4),
  python3-gi
 Description: Secure messaging, anywhere
-- 
GitLab