aboutsummaryrefslogtreecommitdiff
path: root/pkgs/applications/gis
diff options
context:
space:
mode:
authorTaylor Viti <tviti@hawaii.edu>2020-05-23 14:24:21 -1000
committerTaylor Viti <tviti@hawaii.edu>2020-08-22 15:12:31 -1000
commit115a36703ec3a6069fd652e5df50c9c9bc983ad5 (patch)
treea5d21c3482040989a57ae285c7b72b914c52dc2f /pkgs/applications/gis
parentd1c0f742f3a7bf2423386db81cf7cb5583c374c9 (diff)
gmt: init at 6.1.0
Diffstat (limited to 'pkgs/applications/gis')
-rw-r--r--pkgs/applications/gis/gmt/dcw.nix32
-rw-r--r--pkgs/applications/gis/gmt/default.nix73
-rw-r--r--pkgs/applications/gis/gmt/gshhg.nix31
3 files changed, 136 insertions, 0 deletions
diff --git a/pkgs/applications/gis/gmt/dcw.nix b/pkgs/applications/gis/gmt/dcw.nix
new file mode 100644
index 000000000000..82889ae8a07c
--- /dev/null
+++ b/pkgs/applications/gis/gmt/dcw.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+ name = "dcw-gmt";
+ version = "1.1.4";
+ src = fetchurl {
+ url = "ftp://ftp.soest.hawaii.edu/gmt/dcw-gmt-${version}.tar.gz";
+ sha256 = "8d47402abcd7f54a0f711365cd022e4eaea7da324edac83611ca035ea443aad3";
+ };
+
+ installPhase = ''
+ mkdir -p $out/share/dcw-gmt
+ cp -rv ./* $out/share/dcw-gmt
+ '';
+
+ meta = with stdenv.lib; {
+ homepage = "https://www.soest.hawaii.edu/pwessel/dcw/";
+ description = "Vector basemap of the world, for use with GMT";
+ longDescription = ''
+ DCW-GMT is an enhancement to the original 1:1,000,000 scale vector basemap
+ of the world, available from the Princeton University Digital Map and
+ Geospatial Information Center. It contains more state boundaries (the
+ largest 8 countries are now represented) than the original data
+ source. Information about DCW can be found on Wikipedia
+ (https://en.wikipedia.org/wiki/Digital_Chart_of_the_World). This data is
+ for use by GMT, the Generic Mapping Tools.
+ '';
+ license = licenses.lgpl3Plus;
+ maintainers = with maintainers; [ tviti ];
+ };
+
+}
diff --git a/pkgs/applications/gis/gmt/default.nix b/pkgs/applications/gis/gmt/default.nix
new file mode 100644
index 000000000000..8c7c7687f3dd
--- /dev/null
+++ b/pkgs/applications/gis/gmt/default.nix
@@ -0,0 +1,73 @@
+{ stdenv, fetchurl, cmake, curl, Accelerate, CoreGraphics, CoreVideo
+, fftwSinglePrec, netcdf, pcre, gdal, blas, lapack, glibc, ghostscript, dcw-gmt
+, gshhg-gmt }:
+
+/* The onus is on the user to also install:
+ - ffmpeg for webm or mp4 output
+ - graphicsmagick for gif output
+*/
+
+stdenv.mkDerivation rec {
+ pname = "gmt";
+ version = "6.1.0";
+ src = fetchurl {
+ url = "https://github.com/GenericMappingTools/gmt/releases/download/${version}/gmt-${version}-src.tar.gz";
+ sha256 = "0vzxzpvbf1sqma2airsibxvqb9m4sajm7jsfr7rrv6q7924c7ijw";
+ };
+
+ nativeBuildInputs = [ cmake ];
+
+ buildInputs = [ curl gdal netcdf pcre dcw-gmt gshhg-gmt ]
+ ++ (if stdenv.isDarwin then [
+ Accelerate
+ CoreGraphics
+ CoreVideo
+ ] else [
+ glibc
+ fftwSinglePrec
+ blas
+ lapack
+ ]);
+
+ propagatedBuildInputs = [ ghostscript ];
+
+ cmakeFlags = [
+ "-DGMT_DOCDIR=share/doc/gmt"
+ "-DGMT_MANDIR=share/man"
+ "-DGMT_LIBDIR=lib"
+ "-DCOPY_GSHHG:BOOL=FALSE"
+ "-DGSHHG_ROOT=${gshhg-gmt.out}/share/gshhg-gmt"
+ "-DCOPY_DCW:BOOL=FALSE"
+ "-DDCW_ROOT=${dcw-gmt.out}/share/dcw-gmt"
+ "-DGDAL_ROOT=${gdal.out}"
+ "-DNETCDF_ROOT=${netcdf.out}"
+ "-DPCRE_ROOT=${pcre.out}"
+ "-DGMT_INSTALL_TRADITIONAL_FOLDERNAMES:BOOL=FALSE"
+ "-DGMT_ENABLE_OPENMP:BOOL=TRUE"
+ "-DGMT_INSTALL_MODULE_LINKS:BOOL=FALSE"
+ "-DLICENSE_RESTRICTED=LGPL" # "GPL" and "no" also valid
+ ] ++ (with stdenv;
+ lib.optional (!isDarwin) [
+ "-DFFTW3_ROOT=${fftwSinglePrec.dev}"
+ "-DLAPACK_LIBRARY=${lapack}/lib/liblapack.so"
+ "-DBLAS_LIBRARY=${blas}/lib/libblas.so"
+ ]);
+
+ meta = with stdenv.lib; {
+ homepage = "https://www.generic-mapping-tools.org";
+ description = "Tools for manipulating geographic and cartesian data sets";
+ longDescription = ''
+ GMT is an open-source collection of command-line tools for manipulating
+ geographic and Cartesian data sets (including filtering, trend fitting,
+ gridding, projecting, etc.) and producing high-quality illustrations
+ ranging from simple x–y plots via contour maps to artificially illuminated
+ surfaces and 3D perspective views. It supports many map projections and
+ transformations and includes supporting data such as coastlines, rivers,
+ and political boundaries and optionally country polygons.
+ '';
+ platforms = [ "x86_64-linux" "x86_64-darwin" ];
+ license = licenses.lgpl3Plus;
+ maintainers = with maintainers; [ tviti ];
+ };
+
+}
diff --git a/pkgs/applications/gis/gmt/gshhg.nix b/pkgs/applications/gis/gmt/gshhg.nix
new file mode 100644
index 000000000000..89ace020033f
--- /dev/null
+++ b/pkgs/applications/gis/gmt/gshhg.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+ name = "gshhg-gmt";
+ version = "2.3.7";
+ src = fetchurl {
+ url = "ftp://ftp.soest.hawaii.edu/gmt/gshhg-gmt-${version}.tar.gz";
+ sha256 = "9bb1a956fca0718c083bef842e625797535a00ce81f175df08b042c2a92cfe7f";
+ };
+
+ installPhase = ''
+ mkdir -p $out/share/gshhg-gmt
+ cp -rv ./* $out/share/gshhg-gmt
+ '';
+
+ meta = with stdenv.lib; {
+ homepage = "https://www.soest.hawaii.edu/pwessel/gshhg/";
+ description = "High-resolution shoreline data set, for use with GMT";
+ longDescription = ''
+ GSHHG is a high-resolution shoreline data set amalgamated from two
+ databases: Global Self-consistent Hierarchical High-resolution Shorelines
+ (GSHHS) and CIA World Data Bank II (WDBII). GSHHG contains vector
+ descriptions at five different resolutions of land outlines, lakes,
+ rivers, and political boundaries. This data is for use by GMT, the Generic
+ Mapping Tools.
+ '';
+ license = licenses.lgpl3Plus;
+ maintainers = with maintainers; [ tviti ];
+ };
+
+}