tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
qmapshack: fix localization
Nikolay Korotkiy
4 years ago
5fe151db
07d3557f
+84
-2
2 changed files
expand all
collapse all
unified
split
pkgs
applications
gis
qmapshack
default.nix
fix-qttranslations-path.patch
+10
-2
pkgs/applications/gis/qmapshack/default.nix
···
1
1
-
{ mkDerivation, lib, fetchFromGitHub, cmake
2
2
-
, qtscript, qtwebengine, gdal, proj, routino, quazip }:
1
1
+
{ mkDerivation, lib, fetchFromGitHub, cmake, substituteAll
2
2
+
, qtscript, qttranslations, qtwebengine, gdal, proj, routino, quazip }:
3
3
4
4
mkDerivation rec {
5
5
pname = "qmapshack";
···
11
11
rev = "V_${version}";
12
12
sha256 = "1yzgkdjxwyg8ggbxyjwr0zjrx99ckrbz2p2524iii9i7qqn8wfsx";
13
13
};
14
14
+
15
15
+
patches = [
16
16
+
# See https://github.com/NixOS/nixpkgs/issues/86054
17
17
+
(substituteAll {
18
18
+
src = ./fix-qttranslations-path.patch;
19
19
+
inherit qttranslations;
20
20
+
})
21
21
+
];
14
22
15
23
nativeBuildInputs = [ cmake ];
16
24
+74
pkgs/applications/gis/qmapshack/fix-qttranslations-path.patch
···
1
1
+
diff --git i/src/qmapshack/setup/CAppSetupLinux.cpp w/src/qmapshack/setup/CAppSetupLinux.cpp
2
2
+
index 63ea06c0..3a03b816 100644
3
3
+
--- i/src/qmapshack/setup/CAppSetupLinux.cpp
4
4
+
+++ w/src/qmapshack/setup/CAppSetupLinux.cpp
5
5
+
@@ -30,7 +30,7 @@ void CAppSetupLinux::initQMapShack()
6
6
+
prepareGdal("", "");
7
7
+
8
8
+
// setup translators
9
9
+
- QString resourceDir = QLibraryInfo::location(QLibraryInfo::TranslationsPath);
10
10
+
+ QLatin1String resourceDir = QLatin1String("@qttranslations@/translations");
11
11
+
QString translationPath = QCoreApplication::applicationDirPath();
12
12
+
translationPath.replace(QRegExp("bin$"), "share/qmapshack/translations");
13
13
+
prepareTranslator(resourceDir, "qt_");
14
14
+
diff --git i/src/qmapshack/setup/CAppSetupMac.cpp w/src/qmapshack/setup/CAppSetupMac.cpp
15
15
+
index ad9b21e9..9dca8a1e 100644
16
16
+
--- i/src/qmapshack/setup/CAppSetupMac.cpp
17
17
+
+++ w/src/qmapshack/setup/CAppSetupMac.cpp
18
18
+
@@ -63,7 +63,7 @@ void CAppSetupMac::initQMapShack()
19
19
+
20
20
+
// setup translators
21
21
+
QString translationPath = getApplicationDir(relTranslationDir).absolutePath();
22
22
+
- prepareTranslator(translationPath, "qt_");
23
23
+
+ prepareTranslator(QLatin1String("@qttranslations@/translations"), "qt_");
24
24
+
prepareTranslator(translationPath, "qmapshack_");
25
25
+
26
26
+
// load and apply style sheet
27
27
+
diff --git i/src/qmaptool/setup/CAppSetupLinux.cpp w/src/qmaptool/setup/CAppSetupLinux.cpp
28
28
+
index dea1c4f3..8da95574 100644
29
29
+
--- i/src/qmaptool/setup/CAppSetupLinux.cpp
30
30
+
+++ w/src/qmaptool/setup/CAppSetupLinux.cpp
31
31
+
@@ -29,7 +29,7 @@ void CAppSetupLinux::initQMapTool()
32
32
+
prepareGdal("", "");
33
33
+
34
34
+
// setup translators
35
35
+
- QString resourceDir = QLibraryInfo::location(QLibraryInfo::TranslationsPath);
36
36
+
+ QLatin1String resourceDir = QLatin1String("@qttranslations@/translations");
37
37
+
QString translationPath = QCoreApplication::applicationDirPath();
38
38
+
translationPath.replace(QRegExp("bin$"), "share/qmaptool/translations");
39
39
+
prepareTranslator(resourceDir, "qt_");
40
40
+
diff --git i/src/qmaptool/setup/CAppSetupMac.cpp w/src/qmaptool/setup/CAppSetupMac.cpp
41
41
+
index 02b27e07..fae27748 100644
42
42
+
--- i/src/qmaptool/setup/CAppSetupMac.cpp
43
43
+
+++ w/src/qmaptool/setup/CAppSetupMac.cpp
44
44
+
@@ -64,7 +64,7 @@ void CAppSetupMac::initQMapTool()
45
45
+
46
46
+
// setup translators
47
47
+
QString translationPath = getApplicationDir(relTranslationDir).absolutePath();
48
48
+
- prepareTranslator(translationPath, "qt_");
49
49
+
+ prepareTranslator(QLatin1String("@qttranslations@/translations"), "qt_");
50
50
+
prepareTranslator(translationPath, "qmaptool_");
51
51
+
52
52
+
migrateDirContent(defaultCachePath());
53
53
+
diff --git i/src/qmt_rgb2pct/main.cpp w/src/qmt_rgb2pct/main.cpp
54
54
+
index 21267d03..d539cec8 100644
55
55
+
--- i/src/qmt_rgb2pct/main.cpp
56
56
+
+++ w/src/qmt_rgb2pct/main.cpp
57
57
+
@@ -50,7 +50,7 @@ static void prepareTranslator(QString translationPath, QString translationPrefix
58
58
+
static void loadTranslations()
59
59
+
{
60
60
+
#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD) || defined(__FreeBSD_kernel__) || defined(__GNU__) || defined(Q_OS_CYGWIN)
61
61
+
- QString resourceDir = QLibraryInfo::location(QLibraryInfo::TranslationsPath);
62
62
+
+ QLatin1String resourceDir = QLatin1String("@qttranslations@/translations");
63
63
+
QString translationPath = QCoreApplication::applicationDirPath();
64
64
+
translationPath.replace(QRegExp("bin$"), "share/" APP_STR "/translations");
65
65
+
prepareTranslator(resourceDir, "qt_");
66
66
+
@@ -61,7 +61,7 @@ static void loadTranslations()
67
67
+
// os x
68
68
+
static QString relTranslationDir = "Resources/translations"; // app
69
69
+
QString translationPath = getApplicationDir(relTranslationDir).absolutePath();
70
70
+
- prepareTranslator(translationPath, "qt_");
71
71
+
+ prepareTranslator(QLatin1String("@qttranslations@/translations"), "qt_");
72
72
+
prepareTranslator(translationPath, APP_STR "_");
73
73
+
#endif
74
74
+