diff --git a/pkgs/applications/misc/therion/default.nix b/pkgs/applications/misc/therion/default.nix new file mode 100644 index 00000000000..295cd860b03 --- /dev/null +++ b/pkgs/applications/misc/therion/default.nix @@ -0,0 +1,97 @@ +{ lib +, stdenv +, fetchFromGitHub +, cmake +, pkg-config +, perl +, tcl +, tcllib +, tk +, expat +, bwidget +, python3 +, texlive +, survex +, makeWrapper +, fmt +, proj +, wxGTK32 +, vtk +, freetype +, libjpeg +, gettext +, libGL +, libGLU +, sqlite +, libtiff +, curl +, tkimg +}: + +stdenv.mkDerivation rec { + pname = "therion"; + version = "6.1.7"; + + src = fetchFromGitHub { + owner = "therion"; + repo = "therion"; + rev = "v${version}"; + hash = "sha256-q+p1akGfzBeZejeYiJ8lrSbEIMTsX5YuIG/u35oh0JI="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + perl + python3 + texlive.combined.scheme-tetex + makeWrapper + tcl.tclPackageHook + ]; + + preConfigure = '' + export OUTDIR=$out + ''; + + cmakeFlags = [ + "-DBUILD_THBOOK=OFF" + ]; + + buildInputs = [ + expat + tkimg + proj + wxGTK32 + vtk + tk + freetype + libjpeg + gettext + libGL + libGLU + sqlite + libtiff + curl + fmt + tcl + tcllib + bwidget + ]; + + fixupPhase = '' + runHook preFixup + wrapProgram $out/bin/therion \ + --prefix PATH : ${lib.makeBinPath [ survex texlive.combined.scheme-tetex ]} + wrapProgram $out/bin/xtherion \ + --prefix PATH : ${lib.makeBinPath [ tk ]} + runHook postFixup + ''; + + meta = with lib; { + description = "Therion – cave surveying software"; + homepage = "https://therion.speleo.sk/"; + changelog = "https://github.com/therion/therion/blob/${src.rev}/CHANGES"; + license = licenses.gpl2Only; + maintainers = with maintainers; [ matthewcroughan ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1105149300a..aea5909be84 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -39384,6 +39384,8 @@ with pkgs; thermald = callPackage ../tools/system/thermald { }; + therion = callPackage ../applications/misc/therion { }; + throttled = callPackage ../tools/system/throttled { }; thinkfan = callPackage ../tools/system/thinkfan { };