Remove flakes for now. I will use shells for now to not have a mixed setup. Add composer v1 for a single customer project as overlay due to usage in shell instead of flakes. Adjust folder to not have unnecessary deep structure. Add shell for reuter monorepo using composer v1.
35 lines
987 B
Nix
35 lines
987 B
Nix
{ stdenv, fetchurl, makeWrapper, unzip, lib, php }:
|
|
let
|
|
pname = "composer";
|
|
version = "1.10.26";
|
|
in stdenv.mkDerivation {
|
|
inherit pname version;
|
|
|
|
src = fetchurl {
|
|
url = "https://getcomposer.org/download/${version}/composer.phar";
|
|
sha256 = "sha256-y/4fhSdsV6vkZNk0UD2TWqITSUrChidcjfq/qR49vcQ=";
|
|
};
|
|
|
|
dontUnpack = true;
|
|
|
|
nativeBuildInputs = [ makeWrapper ];
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
mkdir -p $out/bin
|
|
install -D $src $out/libexec/composer/composer.phar
|
|
makeWrapper ${php}/bin/php $out/bin/composer \
|
|
--add-flags "$out/libexec/composer/composer.phar" \
|
|
--prefix PATH : ${lib.makeBinPath [ unzip ]}
|
|
runHook postInstall
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "Dependency Manager for PHP";
|
|
license = licenses.mit;
|
|
homepage = "https://getcomposer.org/";
|
|
changelog = "https://github.com/composer/composer/releases/tag/${version}";
|
|
maintainers = with maintainers; [ offline ] ++ teams.php.members;
|
|
};
|
|
}
|