depot/third_party/nixpkgs/pkgs/by-name/yo/youtrack/package.nix
Default email c7cb07f092 Project import generated by Copybara.
GitOrigin-RevId: 1536926ef5621b09bba54035ae2bb6d806d72ac8
2024-02-29 21:09:43 +01:00

43 lines
1.3 KiB
Nix

{ lib, stdenvNoCC, fetchzip, makeBinaryWrapper, jdk17_headless, gawk, statePath ? "/var/lib/youtrack" }:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "youtrack";
version = "2023.3.24329";
src = fetchzip {
url = "https://download.jetbrains.com/charisma/youtrack-${finalAttrs.version}.zip";
hash = "sha256-YIqRTCON8S/emj2AChrxhY4dfwtCnXtbiAQCTQ9k54Q=";
};
nativeBuildInputs = [ makeBinaryWrapper ];
dontConfigure = true;
dontBuild = true;
installPhase = ''
runHook preInstall
mkdir -p $out
cp -r * $out
makeWrapper $out/bin/youtrack.sh $out/bin/youtrack \
--prefix PATH : "${lib.makeBinPath [ gawk ]}" \
--set JRE_HOME ${jdk17_headless}
rm -rf $out/internal/java
mv $out/conf $out/conf.orig
ln -s ${statePath}/backups $out/backups
ln -s ${statePath}/conf $out/conf
ln -s ${statePath}/data $out/data
ln -s ${statePath}/logs $out/logs
ln -s ${statePath}/temp $out/temp
runHook postInstall
'';
passthru.updateScript = ./update.sh;
meta = {
description = "Issue tracking and project management tool for developers";
maintainers = lib.teams.serokell.members ++ [ lib.maintainers.leona ];
sourceProvenance = with lib.sourceTypes; [ binaryBytecode ];
# https://www.jetbrains.com/youtrack/buy/license.html
license = lib.licenses.unfree;
};
})