Merge pull request #159997 from jvanbruegge/isabelle-linter
commit
f338d0737c
@ -0,0 +1,5 @@ |
||||
{ callPackage }: |
||||
|
||||
{ |
||||
isabelle-linter = callPackage ./isabelle-linter.nix {}; |
||||
} |
@ -0,0 +1,22 @@ |
||||
{ stdenv, lib, fetchFromGitHub, isabelle }: |
||||
|
||||
stdenv.mkDerivation rec { |
||||
pname = "isabelle-linter"; |
||||
version = "Isabelle2021-1-v1.0.0"; |
||||
|
||||
src = fetchFromGitHub { |
||||
owner = "isabelle-prover"; |
||||
repo = "isabelle-linter"; |
||||
rev = version; |
||||
sha256 = "0v6scc2rhj6bjv530gzz6i57czzcgpkw7a9iqnfdnm5gvs5qjk7a"; |
||||
}; |
||||
|
||||
installPhase = import ./mkBuild.nix { inherit isabelle; path = "${pname}-${version}"; }; |
||||
|
||||
meta = with lib; { |
||||
description = "Linter component for Isabelle."; |
||||
homepage = "https://github.com/isabelle-prover/isabelle-linter"; |
||||
maintainers = with maintainers; [ jvanbruegge ]; |
||||
license = licenses.mit; |
||||
}; |
||||
} |
@ -0,0 +1,36 @@ |
||||
{ isabelle, path }: |
||||
|
||||
let |
||||
dir = "$out/isabelle/${isabelle.dirname}"; |
||||
iDir = "${isabelle}/${isabelle.dirname}"; |
||||
in '' |
||||
shopt -s extglob |
||||
mkdir -p ${dir}/lib/classes |
||||
|
||||
cDir=$out/${isabelle.dirname}/contrib/${path} |
||||
mkdir -p $cDir |
||||
cp -r !(isabelle) $cDir |
||||
|
||||
cd ${dir} |
||||
ln -s ${iDir}/!(lib|bin) ./ |
||||
ln -s ${iDir}/lib/!(classes) lib/ |
||||
ln -s ${iDir}/lib/classes/* lib/classes/ |
||||
|
||||
mkdir bin/ |
||||
cp ${iDir}/bin/* bin/ |
||||
|
||||
export HOME=$TMP |
||||
bin/isabelle components -u $cDir |
||||
bin/isabelle scala_build |
||||
|
||||
cd lib/classes |
||||
for f in ${iDir}/lib/classes/*; do |
||||
rm $(basename $f) |
||||
done |
||||
|
||||
lDir=$out/${isabelle.dirname}/lib/classes/ |
||||
mkdir -p $lDir |
||||
cp -r * $lDir |
||||
cd $out |
||||
rm -rf isabelle |
||||
'' |
Loading…
Reference in new issue