1{ mkDerivation, fetchurl, makeWrapper, lib, php }:
2
3let
4 pname = "phpcs";
5 version = "3.7.1";
6in
7mkDerivation {
8 inherit pname version;
9
10 src = fetchurl {
11 url = "https://github.com/squizlabs/PHP_CodeSniffer/releases/download/${version}/phpcs.phar";
12 sha256 = "sha256-ehQyOhSvn1gwLRVEJJLuEHaozXLAGKgWy0SWW/OpsBU=";
13 };
14
15 dontUnpack = true;
16
17 nativeBuildInputs = [ makeWrapper ];
18
19 installPhase = ''
20 runHook preInstall
21 mkdir -p $out/bin
22 install -D $src $out/libexec/phpcs/phpcs.phar
23 makeWrapper ${php}/bin/php $out/bin/phpcs \
24 --add-flags "$out/libexec/phpcs/phpcs.phar"
25 runHook postInstall
26 '';
27
28 meta = with lib; {
29 changelog = "https://github.com/squizlabs/PHP_CodeSniffer/releases/tag/${version}";
30 description = "PHP coding standard tool";
31 license = licenses.bsd3;
32 homepage = "https://squizlabs.github.io/PHP_CodeSniffer/";
33 maintainers = with maintainers; [ javaguirre ] ++ teams.php.members;
34 };
35}