depot/third_party/nixpkgs/pkgs/development/php-packages/phpstan/default.nix
Default email 6d4aeb4377 Project import generated by Copybara.
GitOrigin-RevId: 0f213d0fee84280d8c3a97f7469b988d6fe5fcdf
2023-01-11 08:51:40 +01:00

42 lines
1.2 KiB
Nix

{ mkDerivation, fetchurl, makeWrapper, lib, php }:
let
pname = "phpstan";
version = "1.9.4";
in
mkDerivation {
inherit pname version;
src = fetchurl {
url = "https://github.com/phpstan/phpstan/releases/download/${version}/phpstan.phar";
sha256 = "sha256-A+F/ZoL6dLYx4MWN0eWXtQnmWJPYBqEcSgY4A1oR3mo=";
};
dontUnpack = true;
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
runHook preInstall
mkdir -p $out/bin
install -D $src $out/libexec/phpstan/phpstan.phar
makeWrapper ${php}/bin/php $out/bin/phpstan \
--add-flags "$out/libexec/phpstan/phpstan.phar"
runHook postInstall
'';
meta = with lib; {
changelog = "https://github.com/phpstan/phpstan/releases/tag/${version}";
description = "PHP Static Analysis Tool";
longDescription = ''
PHPStan focuses on finding errors in your code without actually
running it. It catches whole classes of bugs even before you write
tests for the code. It moves PHP closer to compiled languages in the
sense that the correctness of each line of the code can be checked
before you run the actual line.
'';
license = licenses.mit;
homepage = "https://github.com/phpstan/phpstan";
maintainers = teams.php.members;
};
}