diff --git a/pkgs/applications/misc/mkgmap/build.xml.patch b/pkgs/applications/misc/mkgmap/build.xml.patch new file mode 100644 index 000000000000..6ec40786b249 --- /dev/null +++ b/pkgs/applications/misc/mkgmap/build.xml.patch @@ -0,0 +1,11 @@ +--- a/build.xml 2019-08-26 23:22:55.104829846 +0300 ++++ b/build.xml 2019-08-27 00:11:07.366257594 +0300 +@@ -227,7 +227,7 @@ + + + +- + + diff --git a/pkgs/applications/misc/mkgmap/default.nix b/pkgs/applications/misc/mkgmap/default.nix new file mode 100644 index 000000000000..debcea78f555 --- /dev/null +++ b/pkgs/applications/misc/mkgmap/default.nix @@ -0,0 +1,57 @@ +{ stdenv, fetchurl, fetchsvn, jdk, jre, ant, makeWrapper }: + +let + fastutil = fetchurl { + url = "http://ivy.mkgmap.org.uk/repo/it.unimi.dsi/fastutil/6.5.15-mkg.1b/jars/fastutil.jar"; + sha256 = "0d88m0rpi69wgxhnj5zh924q4zsvxq8m4ybk7m9mr3gz1hx0yx8c"; + }; + osmpbf = fetchurl { + url = "http://ivy.mkgmap.org.uk/repo/crosby/osmpbf/1.3.3/jars/osmpbf.jar"; + sha256 = "0zb4pqkwly5z30ww66qhhasdhdrzwmrw00347yrbgyk2ii4wjad3"; + }; + protobuf = fetchurl { + url = "https://repo1.maven.org/maven2/com/google/protobuf/protobuf-java/2.5.0/protobuf-java-2.5.0.jar"; + sha256 = "0x6c4pbsizvk3lm6nxcgi1g2iqgrxcna1ip74lbn01f0fm2wdhg0"; + }; +in + +stdenv.mkDerivation rec { + pname = "mkgmap"; + version = "4289"; + + src = fetchsvn { + url = "https://svn.mkgmap.org.uk/mkgmap/mkgmap/trunk"; + rev = version; + sha256 = "1sm1pw71q7z0jrxm8bcgm6xjl2mcidyibcf0a3m8fv2andidxrb4"; + }; + + # This patch removes from the build process + # the automatic download of dependencies (see configurePhase) + patches = [ ./build.xml.patch ]; + + nativeBuildInputs = [ jdk ant makeWrapper ]; + + configurePhase = '' + mkdir -p lib/compile + cp ${fastutil} ${osmpbf} ${protobuf} lib/compile/ + ''; + + buildPhase = "ant"; + + installPhase = '' + cd dist + install -Dm644 mkgmap.jar $out/share/java/mkgmap/mkgmap.jar + install -Dm644 doc/mkgmap.1 $out/share/man/man1/mkgmap.1 + cp -r lib/ $out/share/java/mkgmap/ + makeWrapper ${jre}/bin/java $out/bin/mkgmap \ + --add-flags "-jar $out/share/java/mkgmap/mkgmap.jar" + ''; + + meta = with stdenv.lib; { + description = "Create maps for Garmin GPS devices from OpenStreetMap (OSM) data"; + homepage = "http://www.mkgmap.org.uk"; + license = licenses.gpl2; + maintainers = with maintainers; [ sikmir ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index bbe2e49bc8f7..dc5c6ee5438b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5027,6 +5027,8 @@ in milu = callPackage ../applications/misc/milu { }; + mkgmap = callPackage ../applications/misc/mkgmap { }; + mpack = callPackage ../tools/networking/mpack { }; mtm = callPackage ../tools/misc/mtm { };