1{ mkDerivation, fetchurl, makeWrapper, lib, php }:
2
3let
4 pname = "box";
5 version = "4.2.0";
6in
7mkDerivation {
8 inherit pname version;
9
10 src = fetchurl {
11 url = "https://github.com/box-project/box/releases/download/${version}/box.phar";
12 sha256 = "sha256-9pPhqFq9t3MKI/y6/7iCYB8ddWFrafGVcV/k+Exb+KQ=";
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/box/box.phar
23 makeWrapper ${php}/bin/php $out/bin/box \
24 --add-flags "-d phar.readonly=0 $out/libexec/box/box.phar"
25 runHook postInstall
26 '';
27
28 meta = with lib; {
29 changelog = "https://github.com/box-project/box/releases/tag/${version}";
30 description = "An application for building and managing Phars";
31 license = licenses.mit;
32 homepage = "https://github.com/box-project/box";
33 maintainers = with maintainers; [ ] ++ teams.php.members;
34 };
35}