41 lines
1 KiB
Nix
41 lines
1 KiB
Nix
|
{ lib
|
||
|
, makeSetupHook
|
||
|
, diffutils
|
||
|
, jq
|
||
|
, writeShellApplication
|
||
|
, moreutils
|
||
|
, makeBinaryWrapper
|
||
|
, cacert
|
||
|
, buildPackages
|
||
|
}:
|
||
|
|
||
|
let
|
||
|
php-script-utils = writeShellApplication {
|
||
|
name = "php-script-utils";
|
||
|
runtimeInputs = [ jq ];
|
||
|
text = builtins.readFile ./php-script-utils.bash;
|
||
|
};
|
||
|
in
|
||
|
{
|
||
|
composerRepositoryHook = makeSetupHook
|
||
|
{
|
||
|
name = "composer-repository-hook.sh";
|
||
|
propagatedBuildInputs = [ jq moreutils cacert ];
|
||
|
substitutions = {
|
||
|
phpScriptUtils = lib.getExe php-script-utils;
|
||
|
};
|
||
|
} ./composer-repository-hook.sh;
|
||
|
|
||
|
composerInstallHook = makeSetupHook
|
||
|
{
|
||
|
name = "composer-install-hook.sh";
|
||
|
propagatedBuildInputs = [ jq makeBinaryWrapper moreutils cacert ];
|
||
|
substitutions = {
|
||
|
# Specify the stdenv's `diff` by abspath to ensure that the user's build
|
||
|
# inputs do not cause us to find the wrong `diff`.
|
||
|
cmp = "${lib.getBin buildPackages.diffutils}/bin/cmp";
|
||
|
phpScriptUtils = lib.getExe php-script-utils;
|
||
|
};
|
||
|
} ./composer-install-hook.sh;
|
||
|
}
|