summaryrefslogtreecommitdiffstats
path: root/pkgs/applications/gis
diff options
context:
space:
mode:
authorBenjamin Hipple <bhipple@protonmail.com>2020-06-03 23:42:51 -0400
committerGitHub <noreply@github.com>2020-06-03 23:42:51 -0400
commit33e9db21d6dfe0bbd0c80f5f80b6cd8aae95d157 (patch)
treee799bdbff14fc1b6bd23ebf8c8270ccc2cc28fa3 /pkgs/applications/gis
parent1ae28ebfdb7e7d48f003881967db67c156724912 (diff)
parenta46d7f2d72c5bde567c6c1b64a532b10b1eabd98 (diff)
Merge pull request #87950 from sikmir/mapper
openorienteering-mapper: 0.9.2 -> 0.9.3
Diffstat (limited to 'pkgs/applications/gis')
-rw-r--r--pkgs/applications/gis/openorienteering-mapper/default.nix69
-rw-r--r--pkgs/applications/gis/openorienteering-mapper/fix-qttranslations-path.diff13
2 files changed, 63 insertions, 19 deletions
diff --git a/pkgs/applications/gis/openorienteering-mapper/default.nix b/pkgs/applications/gis/openorienteering-mapper/default.nix
index 2fc118597f92..39f8694dd177 100644
--- a/pkgs/applications/gis/openorienteering-mapper/default.nix
+++ b/pkgs/applications/gis/openorienteering-mapper/default.nix
@@ -1,31 +1,61 @@
-{ stdenv, fetchFromGitHub, gdal, cmake, ninja, proj, clipper, zlib, qtbase, qttools
-, qtlocation, qtsensors, doxygen, cups, wrapQtAppsHook, qtimageformats
+{ stdenv
+, mkDerivation
+, fetchFromGitHub
+, gdal
+, cmake
+, ninja
+, proj
+, clipper
+, zlib
+, qttools
+, qtlocation
+, qtsensors
+, qttranslations
+, doxygen
+, cups
+, qtimageformats
}:
-stdenv.mkDerivation rec {
+mkDerivation rec {
pname = "OpenOrienteering-Mapper";
- version = "0.9.2";
+ version = "0.9.3";
- buildInputs = [ gdal qtbase qttools qtlocation qtimageformats
- qtsensors clipper zlib proj doxygen cups];
+ buildInputs = [
+ gdal
+ qtlocation
+ qtimageformats
+ qtsensors
+ clipper
+ zlib
+ proj
+ cups
+ ];
- nativeBuildInputs = [ cmake wrapQtAppsHook ninja ];
+ nativeBuildInputs = [ cmake doxygen ninja qttools ];
src = fetchFromGitHub {
owner = "OpenOrienteering";
repo = "mapper";
rev = "v${version}";
- sha256 = "1787f2agjzcyizk2m60icb44yv9dlwv6irw3k53fqfmwkhkd2h5p";
+ sha256 = "05bliglpc8170px6k9lfrp9ylpnb2zf47gnjns9b2bif8dv8zq0l";
};
- cmakeFlags =
- [
+ patches = [
+ # See https://github.com/NixOS/nixpkgs/issues/86054
+ ./fix-qttranslations-path.diff
+ ];
+
+ postPatch = ''
+ substituteInPlace src/util/translation_util.cpp \
+ --subst-var-by qttranslations ${qttranslations}
+ '';
+
+ cmakeFlags = [
# Building the manual and bundling licenses fails
+ # See https://github.com/NixOS/nixpkgs/issues/85306
"-DLICENSING_PROVIDER:BOOL=OFF"
"-DMapper_MANUAL_QTHELP:BOOL=OFF"
- ] ++
- (stdenv.lib.optionals stdenv.isDarwin
- [
+ ] ++ stdenv.lib.optionals stdenv.isDarwin [
# Usually enabled on Darwin
"-DCMAKE_FIND_FRAMEWORK=never"
# FindGDAL is broken and always finds /Library/Framework unless this is
@@ -38,16 +68,17 @@ stdenv.mkDerivation rec {
"-DMapper_PACKAGE_QT=0"
"-DMapper_PACKAGE_ASSISTANT=0"
"-DMapper_PACKAGE_GDAL=0"
- ]);
+ ];
- postInstall =
- stdenv.lib.optionalString stdenv.isDarwin ''
+ postInstall = with stdenv; lib.optionalString isDarwin ''
+ mkdir -p $out/Applications
+ mv $out/Mapper.app $out/Applications
# Fixes "This application failed to start because it could not find or load the Qt
# platform plugin "cocoa"."
- wrapQtApp $out/Mapper.app/Contents/MacOS/Mapper
+ wrapQtApp $out/Applications/Mapper.app/Contents/MacOS/Mapper
mkdir -p $out/bin
- ln -s $out/Mapper.app/Contents/MacOS/Mapper $out/bin/mapper
- '';
+ ln -s $out/Applications/Mapper.app/Contents/MacOS/Mapper $out/bin/mapper
+ '';
meta = with stdenv.lib; {
description = ''
diff --git a/pkgs/applications/gis/openorienteering-mapper/fix-qttranslations-path.diff b/pkgs/applications/gis/openorienteering-mapper/fix-qttranslations-path.diff
new file mode 100644
index 000000000000..06c465a8fb33
--- /dev/null
+++ b/pkgs/applications/gis/openorienteering-mapper/fix-qttranslations-path.diff
@@ -0,0 +1,13 @@
+diff --git i/src/util/translation_util.cpp w/src/util/translation_util.cpp
+index da03d216..c1f12751 100644
+--- i/src/util/translation_util.cpp
++++ w/src/util/translation_util.cpp
+@@ -103,7 +103,7 @@ TranslationUtil::TranslationUtil(const QString& code, QString translation_file)
+ }
+
+ QString translation_name = QLatin1String("qt_") + language.code;
+- if (!qt_translator.load(translation_name, QLibraryInfo::location(QLibraryInfo::TranslationsPath)))
++ if (!qt_translator.load(translation_name, QLatin1String("@qttranslations@/translations")))
+ load(qt_translator, translation_name);
+
+ load(app_translator, translation_file);