diff --git a/MANIFEST.in b/MANIFEST.in
index 1fc412e7..bc11f1c5 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -1,2 +1,3 @@
include README.md
include rare/resources/images/*
+include rare/resources/languages/*
diff --git a/rare/app.py b/rare/app.py
index d1cf447a..a1d5a872 100644
--- a/rare/app.py
+++ b/rare/app.py
@@ -5,7 +5,7 @@ import sys
import time
import traceback
-from PyQt5.QtCore import QThreadPool, QSettings, QTranslator, QFile
+from PyQt5.QtCore import QThreadPool, QSettings, QTranslator
from PyQt5.QtGui import QIcon
from PyQt5.QtWidgets import QApplication, QSystemTrayIcon, QMessageBox
from requests import HTTPError
@@ -13,7 +13,7 @@ from requests import HTTPError
# noinspection PyUnresolvedReferences
import rare.resources.resources
import rare.shared as shared
-from rare import cache_dir
+from rare import cache_dir, resources_path
from rare.components.dialogs.launch_dialog import LaunchDialog
from rare.components.main_window import MainWindow
from rare.components.tray_icon import TrayIcon
@@ -100,17 +100,17 @@ class App(QApplication):
self.translator = QTranslator()
lang = self.settings.value("language", self.core.language_code, type=str)
- if QFile(f":/languages/{lang}.qm").exists():
- self.translator.load(f":/languages/{lang}.qm")
+ if os.path.isfile(f := os.path.join(resources_path, "languages", f"{lang}.qm")):
+ self.translator.load(f)
logger.info("Your language is supported: " + lang)
elif not lang == "en":
logger.info("Your language is not supported")
self.installTranslator(self.translator)
# translator for qt stuff
- if QFile(f":/languages/{lang}.qm").exists():
+ if os.path.isfile(f := os.path.join(resources_path, f"qt_{lang}.qm")):
self.qt_translator = QTranslator()
- self.qt_translator.load(f":/languages/qt_{lang}.qm")
+ self.qt_translator.load(f)
self.installTranslator(self.qt_translator)
# Style
diff --git a/rare/resources/resources.py b/rare/resources/resources.py
index 2bb4dbae..ee4b6339 100644
Binary files a/rare/resources/resources.py and b/rare/resources/resources.py differ
diff --git a/rare/resources/resources.qrc b/rare/resources/resources.qrc
index 730c3453..3fc8d09a 100644
--- a/rare/resources/resources.qrc
+++ b/rare/resources/resources.qrc
@@ -25,10 +25,6 @@
stylesheets/RareStyle/square.svg
stylesheets/RareStyle/square-disabled.svg
-
- languages/de.qm
- languages/qt_de.qm
-
images/Rare.png
images/loader.gif
diff --git a/rare/utils/utils.py b/rare/utils/utils.py
index 1d56aaed..211a46fc 100644
--- a/rare/utils/utils.py
+++ b/rare/utils/utils.py
@@ -187,8 +187,8 @@ def get_style_sheets() -> List[str]:
def get_translations():
langs = ["en"]
- for i in QDir(":/languages"):
- if i.endswith(".qm"):
+ for i in os.listdir(os.path.join(resources_path, "languages")):
+ if i.endswith(".qm") and not i.startswith("qt_"):
langs.append(i.split(".")[0])
return langs