kotlin-cli: init at 0.11.1

This commit is contained in:
Daniels Šatcs
2026-06-25 09:51:53 +03:00
parent 26168cde30
commit 2b35ffed0a
+62
View File
@@ -0,0 +1,62 @@
{
lib,
fetchurl,
stdenv,
jre,
makeWrapper,
nix-update-script,
jdk25,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "kotlin-cli";
version = "0.11.1";
src = fetchurl {
url = "https://packages.jetbrains.team/maven/p/amper/amper/org/jetbrains/kotlin/kotlin-cli/${finalAttrs.version}/kotlin-cli-${finalAttrs.version}-dist.tgz";
hash = "sha256-De0qQ09r8ZOyTiptVsO6RD9CMnIRVaZaqoNyeJQSES8=";
};
sourceRoot = ".";
dontBuild = true;
nativeBuildInputs = [ makeWrapper ];
strictDeps = true;
__structuredAttrs = true;
installPhase = ''
mkdir -p $out/share/kotlin-cli
cp -r * $out/share/kotlin-cli/
mkdir -p $out/bin
chmod +x $out/share/kotlin-cli/bin/launcher.sh
# Override amper runtime JVM.
sed -i 's|^[[:space:]]*jre_url=.*| jre_url=""|' $out/share/kotlin-cli/bin/launcher.sh
sed -i 's|^[[:space:]]*jre_target_dir=.*| jre_target_dir="${jdk25}"|' $out/share/kotlin-cli/bin/launcher.sh
# Create the missing .flag file to satisfy the runtime check
touch $out/share/kotlin-cli/.flag
# Override kotlin toolchain launcher JVM.
makeWrapper $out/share/kotlin-cli/bin/launcher.sh $out/bin/kotlin \
--set KOTLIN_CLI_JAVA_HOME "${jdk25.home}"
runHook postInstall
'';
passthru.updateScript = nix-update-script {
extraArgs = [
"--url=https://github.com/JetBrains/kotlin-toolchain"
];
};
meta = {
description = "Kotlin Toolchain CLI";
homepage = "https://github.com/JetBrains/kotlin-toolchain";
license = lib.licenses.asl20;
maintainers = [ lib.maintainers.dshatz ];
platforms = jre.meta.platforms;
sourceProvenance = [ lib.sourceTypes.binaryBytecode ];
mainProgram = "kotlin";
};
})