diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index c58ab5eb8b9c..9f64921111b7 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -6074,6 +6074,12 @@ githubId = 25820499; name = "Roman Kretschmer"; }; + goatchurchprime = { + email = "julian@goatchurch.org.uk"; + github = "goatchurchprime"; + githubId = 677254; + name = "Julian Todd"; + }; gobidev = { email = "adrian.groh@t-online.de"; github = "Gobidev"; diff --git a/pkgs/applications/gis/tunnelx/default.nix b/pkgs/applications/gis/tunnelx/default.nix new file mode 100644 index 000000000000..821900a9d465 --- /dev/null +++ b/pkgs/applications/gis/tunnelx/default.nix @@ -0,0 +1,52 @@ +{ lib +, stdenv +, fetchFromGitHub +, jdk +, jre +, survex +, makeWrapper +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "tunnelx"; + version = "2023-07-nix"; + + src = fetchFromGitHub { + owner = "CaveSurveying"; + repo = "tunnelx"; + rev = "v${finalAttrs.version}"; + hash = "sha256-H6lHqc9on/pv/KihNcaHPwbWf4JXRkeRqNoYq6yVKqM="; + }; + + nativeBuildInputs = [ + makeWrapper + ]; + + buildInputs = [ + jdk + ]; + + runtimeInputs = [ + survex + ]; + + buildPhase = '' + javac -d . src/*.java + ''; + + installPhase = '' + mkdir -p $out/bin $out/java + cp -r symbols Tunnel tutorials $out/java + makeWrapper ${jre}/bin/java $out/bin/tunnelx \ + --add-flags "-cp $out/java Tunnel.MainBox" \ + --set SURVEX_EXECUTABLE_DIR ${survex}/bin/ \ + --set TUNNEL_USER_DIR $out/java/ + ''; + + meta = with lib; { + description = "A program for drawing cave surveys in 2D"; + homepage = "https://github.com/CaveSurveying/tunnelx/"; + license = licenses.gpl3; + maintainers = with maintainers; [ goatchurchprime ]; + }; +}) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 08f019b30ed7..b7de28a1a2de 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -40514,6 +40514,8 @@ with pkgs; trufflehog = callPackage ../tools/security/trufflehog { }; + tunnelx = callPackage ../applications/gis/tunnelx { }; + tvbrowser = callPackage ../applications/misc/tvbrowser { }; tvheadend = callPackage ../servers/tvheadend { };