nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ mkDerivation, fetchurl, makeWrapper, unzip, lib, php }:
2let
3 pname = "composer";
4 version = "2.3.5";
5in
6mkDerivation {
7 inherit pname version;
8
9 src = fetchurl {
10 url = "https://getcomposer.org/download/${version}/composer.phar";
11 sha256 = "sha256-OztaiZwGpGrsKAcnvfUKrRQzT2vEBDbqdrB7ZQhw2PQ=";
12 };
13
14 dontUnpack = true;
15
16 nativeBuildInputs = [ makeWrapper ];
17
18 installPhase = ''
19 runHook preInstall
20 mkdir -p $out/bin
21 install -D $src $out/libexec/composer/composer.phar
22 makeWrapper ${php}/bin/php $out/bin/composer \
23 --add-flags "$out/libexec/composer/composer.phar" \
24 --prefix PATH : ${lib.makeBinPath [ unzip ]}
25 runHook postInstall
26 '';
27
28 meta = with lib; {
29 description = "Dependency Manager for PHP";
30 license = licenses.mit;
31 homepage = "https://getcomposer.org/";
32 changelog = "https://github.com/composer/composer/releases/tag/${version}";
33 maintainers = with maintainers; [ offline ] ++ teams.php.members;
34 };
35}