36 lines
885 B
Nix
36 lines
885 B
Nix
{ stdenv, fetchurl, unzip, jre }:
|
|
|
|
stdenv.mkDerivation rec {
|
|
version = "0.6.8";
|
|
baseName = "scalafmt";
|
|
name = "${baseName}-${version}";
|
|
|
|
src = fetchurl {
|
|
url = "https://github.com/scalameta/scalafmt/releases/download/v${version}/${baseName}.tar.gz";
|
|
sha256 = "1iaanrxk5lhxx1zj9gbxzgqbnyy1azfrab984mga7di5z1hs02s2";
|
|
};
|
|
|
|
unpackPhase = "tar xvzf $src";
|
|
|
|
installPhase = ''
|
|
mkdir -p "$out/bin"
|
|
mkdir -p "$out/lib"
|
|
|
|
cp cli/target/scala-2.11/scalafmt.jar "$out/lib/${name}.jar"
|
|
|
|
cat > "$out/bin/${baseName}" << EOF
|
|
#!${stdenv.shell}
|
|
exec ${jre}/bin/java -jar "$out/lib/${name}.jar" "\$@"
|
|
EOF
|
|
|
|
chmod a+x "$out/bin/${baseName}"
|
|
'';
|
|
|
|
meta = with stdenv.lib; {
|
|
description = "Opinionated code formatter for Scala";
|
|
homepage = http://scalafmt.org;
|
|
license = licenses.asl20;
|
|
maintainers = [ maintainers.markus1189 ];
|
|
};
|
|
}
|