diff options
author | Artturi <Artturin@artturin.com> | 2023-11-25 16:22:31 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-25 16:22:31 +0200 |
commit | 4706651a1612f3b86d2481603369bcd7db175baf (patch) | |
tree | 7151ea520c33a1d09f6a61e67e54935a128c7926 /pkgs | |
parent | d3dd31e583fe0e68e282cc86f1619be353c66bd9 (diff) | |
parent | a08880000dee157f618dc790ac3093e80cfc2b36 (diff) |
Merge pull request #268187 from imincik/geoserver-fix-data-dir
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/servers/geospatial/geoserver/data-dir.patch | 18 | ||||
-rw-r--r-- | pkgs/servers/geospatial/geoserver/default.nix | 21 |
2 files changed, 37 insertions, 2 deletions
diff --git a/pkgs/servers/geospatial/geoserver/data-dir.patch b/pkgs/servers/geospatial/geoserver/data-dir.patch new file mode 100644 index 0000000000000..8693216279984 --- /dev/null +++ b/pkgs/servers/geospatial/geoserver/data-dir.patch @@ -0,0 +1,18 @@ +--- a/bin/startup.sh ++++ b/bin/startup.sh +@@ -66,12 +66,9 @@ fi + + #Find the configuration directory: GEOSERVER_DATA_DIR + if [ -z "${GEOSERVER_DATA_DIR:-}" ]; then +- if [ -r "${GEOSERVER_HOME}/data_dir" ]; then +- export GEOSERVER_DATA_DIR="${GEOSERVER_HOME}/data_dir" +- else +- echo "No GEOSERVER_DATA_DIR found, using application defaults" +- GEOSERVER_DATA_DIR="" +- fi ++ echo "GEOSERVER_DATA_DIR is not provided. Using $(pwd)/geoserver/data_dir directory" ++ mkdir -p "$(pwd)"/geoserver/data_dir ++ GEOSERVER_DATA_DIR="$(pwd)/geoserver/data_dir" + fi + + cd "${GEOSERVER_HOME}" || exit 1 diff --git a/pkgs/servers/geospatial/geoserver/default.nix b/pkgs/servers/geospatial/geoserver/default.nix index 4f0b657fda66c..c0a8bfbdf77e3 100644 --- a/pkgs/servers/geospatial/geoserver/default.nix +++ b/pkgs/servers/geospatial/geoserver/default.nix @@ -1,4 +1,12 @@ -{ lib, stdenv, fetchurl, unzip, jre, makeWrapper }: +{ lib +, fetchurl +, makeWrapper +, nixosTests +, stdenv + +, jre +, unzip +}: stdenv.mkDerivation rec { pname = "geoserver"; @@ -9,6 +17,11 @@ stdenv.mkDerivation rec { sha256 = "sha256-xX1rAONMh5XSWGPXkVMemAvG34DDNmu2018HsTvY7G0="; }; + patches = [ + # set GEOSERVER_DATA_DIR to current working directory if not provided + ./data-dir.patch + ]; + sourceRoot = "."; nativeBuildInputs = [ unzip makeWrapper ]; @@ -27,12 +40,16 @@ stdenv.mkDerivation rec { runHook postInstall ''; + passthru = { + tests.geoserver = nixosTests.geoserver; + }; + meta = with lib; { description = "Open source server for sharing geospatial data"; homepage = "https://geoserver.org/"; sourceProvenance = with sourceTypes; [ binaryBytecode ]; license = licenses.gpl2Plus; - maintainers = with maintainers; [ sikmir ]; + maintainers = teams.geospatial.members; platforms = platforms.all; }; } |