From 776f10d5a465321e79e1a0a4ff032f86b594de7d Mon Sep 17 00:00:00 2001 From: Philipp Wolfer Date: Wed, 9 Oct 2019 14:55:31 +0200 Subject: [PATCH] PICARD-1633: fix system locale detection on macOS This failed due to: - macOS returning language / country separated by "-" instead of "_" (en-UK instead of en_UK) - required pyobjc modules not being packaged --- picard/i18n.py | 1 + requirements-macos.txt | 2 ++ 2 files changed, 3 insertions(+) diff --git a/picard/i18n.py b/picard/i18n.py index 29e455b22..95d3338c1 100644 --- a/picard/i18n.py +++ b/picard/i18n.py @@ -63,6 +63,7 @@ def setup_gettext(localedir, ui_language=None, logger=None): import Foundation defaults = Foundation.NSUserDefaults.standardUserDefaults() current_locale = defaults.objectForKey_('AppleLanguages')[0] + current_locale = current_locale.replace('-', '_') locale.setlocale(locale.LC_ALL, current_locale) except Exception as e: logger(e) diff --git a/requirements-macos.txt b/requirements-macos.txt index 1eed662a5..b5cf2e40e 100644 --- a/requirements-macos.txt +++ b/requirements-macos.txt @@ -1,3 +1,5 @@ discid==1.2.0 mutagen==1.42.0 +pyobjc-core==5.2 +pyobjc-framework-Cocoa==5.2 PyQt5==5.13.1