treewide: fix composer hashes that were broken by composer update (#452933)
This commit is contained in:
@@ -214,6 +214,12 @@ code, while others choose not to.
|
||||
|
||||
In Nix, there are multiple approaches to building a Composer-based project.
|
||||
|
||||
::: {.warning}
|
||||
`buildComposerProject2` has a [known bug](https://github.com/NixOS/nixpkgs/issues/451395)
|
||||
where the `vendorHash` changes every time a Composer release happens that changes the
|
||||
`autoload.php` or vendored composer code.
|
||||
:::
|
||||
|
||||
One such method is the `php.buildComposerProject2` helper function, which serves
|
||||
as a wrapper around `mkDerivation`.
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ php82.buildComposerProject2 (finalAttrs: {
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
vendorHash = "sha256-tBB3Zl/N1XqPTD84at5WoGrD0G5rJbobk4E8BFOSm+M=";
|
||||
vendorHash = "sha256-cg9OIBvWX69yU6U6Ag/T3jScG2OUdpTqc+KwP6VyUHo=";
|
||||
composerStrictValidation = false;
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
@@ -21,5 +21,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
homepage = "https://sabre.io/baikal/";
|
||||
license = lib.licenses.gpl3Only;
|
||||
maintainers = with lib.maintainers; [ wrvsrx ];
|
||||
# vendorHash non-reproducible
|
||||
broken = true;
|
||||
};
|
||||
})
|
||||
|
||||
@@ -16,7 +16,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
hash = "sha256-UAofdc8mqSnJXhCTABSf9JZERqur86lzNDI66EHgEQE=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-bNeQEfwXly3LFuEKeSK6J6pRfQF6TNwUqu3SdTswmFI=";
|
||||
vendorHash = "sha256-TlBrL4KyMVHaxqlfvnTkj3TkmU8h5/0BRC5e8yWrhCI=";
|
||||
|
||||
doInstallCheck = true;
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
|
||||
@@ -15,7 +15,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
hash = "sha256-wtkixHexsJNKsLnnlHssh0IzxwWYMPKDcaf/D0zUNKk=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-0uBI30n31W0eDVA9/W366O0Qo2jWZBqEL+YbJx4J7P0=";
|
||||
vendorHash = "sha256-/bf1rvoG1N6GNqisBwMqY05qhTsy7gMeWXarXgElU/M=";
|
||||
|
||||
meta = {
|
||||
changelog = "https://github.com/deployphp/deployer/releases/tag/v${finalAttrs.version}";
|
||||
|
||||
@@ -23,7 +23,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
|
||||
inherit php;
|
||||
|
||||
vendorHash = "sha256-0Mv48mB/pTQtYd2do6wTdhD/c2zwbU1gTYsdU7rELPY=";
|
||||
vendorHash = "sha256-ODJgsvECw+q3sAA6pWNw4X2Png7f4G2Jty9AQSj/SgE=";
|
||||
composoerNoDev = true;
|
||||
composerStrictValidation = false;
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
|
||||
composerLock = ./composer.lock;
|
||||
composerStrictValidation = false;
|
||||
vendorHash = "sha256-pup+ZfPEnqoA3wEXQNn4pWTYXri6d4XzMfuc8k1SeQk=";
|
||||
vendorHash = "sha256-4wB8MRnqnruo9VXupMmAqiRSZx8F2i+8zcOphTeDp1g=";
|
||||
|
||||
meta = with lib; {
|
||||
changelog = "https://github.com/flarum/framework/blob/main/CHANGELOG.md";
|
||||
|
||||
@@ -19,7 +19,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
hash = "sha256-MnN6TIkNZWT+pAQf0+z5l3hj/7K/d3BfI7VAaUEKG8s=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-n+6yNXqarWRZt6VEuHrFe3nrTiGeHnkURmO2UuB/BVc=";
|
||||
vendorHash = "sha256-6vWV8+4tETUFBLeEoG7d8lHKILXvM7ezWbDiG11GA/s=";
|
||||
|
||||
offlineCache = fetchYarnDeps {
|
||||
yarnLock = finalAttrs.src + "/yarn.lock";
|
||||
|
||||
@@ -88,7 +88,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
++ lib.optional minify.style.enable lightningcss
|
||||
++ lib.optional minify.svg.enable scour;
|
||||
|
||||
vendorHash = "sha256-xkFyjs3jW7j+8WosRaxBEYQU2dwQlDr4/nrdtW03xvA=";
|
||||
vendorHash = "sha256-Ke+bh/mvKUk5qxjlBZo4jJhLneyFRq0HYXTwK/KZMBs=";
|
||||
|
||||
postPatch = ''
|
||||
# Our modules are already wrapped, removes missing *.so warnings;
|
||||
|
||||
@@ -17,7 +17,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
};
|
||||
|
||||
composerLock = ./composer.lock;
|
||||
vendorHash = "sha256-szKVZhWcd8p4307irNqgSAK2+hl8AW+gCPyf0EEco8A=";
|
||||
vendorHash = "sha256-uK+nJFXDVPYFbosAUxqu+mmNsD7AnZ18NnIN9FYAaPQ=";
|
||||
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
doInstallCheck = true;
|
||||
|
||||
@@ -16,7 +16,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
};
|
||||
|
||||
composerLock = ./composer.lock;
|
||||
vendorHash = "sha256-rOJ6PFp4Xfe89usoH455EAT30d2Tu3zd3+C/6K/kGBw=";
|
||||
vendorHash = "sha256-4CpyerXmfXbwsNsK16V+GY3Rzo4BfavGpOVITD14p8w=";
|
||||
|
||||
meta = {
|
||||
changelog = "https://github.com/pestphp/pest/releases/tag/v${finalAttrs.version}";
|
||||
|
||||
@@ -16,7 +16,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
hash = "sha256-9XWlWwq+xvqPgKIc7IGoMVTxajjYsrPo/ra/0JIE168=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-3xkt0QjytW4BOCgZdevat7zkSuZTPPvwz3yptiq5zoo=";
|
||||
vendorHash = "sha256-91Yz78nh4r+Gr7gKSwelTdO436ehENVTPUWcnDaU7zg=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
hash = "sha256-iQA19FrXvVLzg+LaY1BcNmG8amMfKPVFwYbZ7dr+H9Q=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-sFRy9Hy9CVNjjYqbPbKH0XhoUdu4HlkiuHDDovTGono=";
|
||||
vendorHash = "sha256-iXkj0Pa4ln8GX/ARCpnijaWdFM4VYZuj42RP0GS2LW8=";
|
||||
|
||||
nativeBuildInputs = [ makeBinaryWrapper ];
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
hash = "sha256-zBhxuEViLxeQ9m3u1L0wYqeL+YEWWwvJS7PtsFPO5QU=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-vnmp/HLzaOzHu22lzugRXIHL43YQ/hm223gcUbIiLT4=";
|
||||
vendorHash = "sha256-Y1/wNFPXza2aO07ZFybpwI3XbTVBhEvFHs9ygHQbcSo=";
|
||||
|
||||
passthru = {
|
||||
tests.version = testers.testVersion {
|
||||
|
||||
@@ -58,6 +58,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
mainProgram = "psysh";
|
||||
license = lib.licenses.mit;
|
||||
homepage = "https://psysh.org/";
|
||||
teams = [ lib.teams.php ];
|
||||
# `composerVendor` doesn't build
|
||||
broken = true;
|
||||
};
|
||||
})
|
||||
|
||||
@@ -16,7 +16,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
hash = "sha256-4rhIaPdyyLiIhVYC4KNKbPAbVsHKnK6BOsebFjmmDeI=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-k+zFpBHE+r0a67gqUry+luMIhJZ5wo1RpEaF4c7vAmI=";
|
||||
vendorHash = "sha256-uZqstfVp5uY7Sec32XLK7RvuUtP8Hj21W7tayhhuf2g=";
|
||||
|
||||
nativeInstallCheckInputs = [
|
||||
versionCheckHook
|
||||
|
||||
@@ -16,7 +16,7 @@ php82.buildComposerProject2 (finalAttrs: {
|
||||
hash = "sha256-bAT4jHvqWeYcACeyGtBwVBA2Rz+AvkZcUGLDwSf+fLg=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-vketnTu5VEgt3HBbtnTppWl3+sSSIsCB2MpvL27bxv4=";
|
||||
vendorHash = "sha256-Rg8WTZUnWA4bemNmE7hxFwfnlMtYyPkeltAQEWJ2VDU=";
|
||||
|
||||
nativeInstallCheckInputs = [
|
||||
versionCheckHook
|
||||
|
||||
@@ -16,7 +16,7 @@ php82.buildComposerProject2 (finalAttrs: {
|
||||
hash = "sha256-giJAcH2R9hAlUTbwRi7rbmUP+WV8Nfb9XmoHHs4RcbI=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-7oZtuQ7PhB7q9vNO2TLI46kg2q9BgdLjGUduGXAHc0E=";
|
||||
vendorHash = "sha256-A/hAw0J4Q3kun6soxI6h7kpyGef9q0EFg8HAQHHZUro=";
|
||||
|
||||
doInstallCheck = true;
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
|
||||
@@ -14,6 +14,13 @@
|
||||
versionCheckHook,
|
||||
}:
|
||||
|
||||
/*
|
||||
XXX IMPORTANT
|
||||
|
||||
Make sure to check if the `vendorHash` of `buildComposerProject2` changes when updating!
|
||||
See https://github.com/NixOS/nixpkgs/issues/451395
|
||||
*/
|
||||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "composer";
|
||||
version = "2.8.12";
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
hash = "sha256-gY6ocmkd7eJIMaBrewfxYL7gTr+1qNHTkuAp+w9ApUU=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-3frpoQzHtJA2/jJpZT+yIRatEwiY6LIUGzEZBa8hXbM=";
|
||||
vendorHash = "sha256-zrHOw7Uyq8H7AyxrfCo5VthX1EeoSB44ynrRt38u3Sk=";
|
||||
|
||||
nativeInstallCheckInputs = [
|
||||
versionCheckHook
|
||||
|
||||
@@ -15,7 +15,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
hash = "sha256-dv9v1KCLNheFmrRQ7cID5WFvoiH0OWVPWSrN023dEqA=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-H1QJ+ML0tbZzEBKknP0GHhUhw+ujiIH/QNmEgA2zSmM=";
|
||||
vendorHash = "sha256-U6BHAd4tWQKm6uCJ5sM51PltXhF3J4ieTnbC060+8Jg=";
|
||||
|
||||
meta = {
|
||||
changelog = "https://github.com/phar-io/phive/releases/tag/${finalAttrs.version}";
|
||||
|
||||
@@ -17,7 +17,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
};
|
||||
|
||||
composerLock = ./composer.lock;
|
||||
vendorHash = "sha256-ySdLlqlGKZ6LgmAOBMkBNoCAqWrgMwE/Cj6ZEPEsCko=";
|
||||
vendorHash = "sha256-AQAASj5vrSE1xkJ/SZHU4GwOWNobe9ES0Yo+YrLH354=";
|
||||
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
doInstallCheck = true;
|
||||
|
||||
@@ -17,7 +17,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
};
|
||||
|
||||
composerLock = ./composer.lock;
|
||||
vendorHash = "sha256-CwIfRmwJREz24Qj6J2PKQp+ix+/ZXo1oamcHc1fPUoc=";
|
||||
vendorHash = "sha256-uy8/bkgjDXnt544S70IOwX9I8U0lMLAkbiBDYXyJBcY=";
|
||||
|
||||
nativeInstallCheckInputs = [
|
||||
versionCheckHook
|
||||
|
||||
@@ -19,7 +19,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
# Missing `composer.lock` from the repository.
|
||||
# Issue open at https://github.com/phpmd/phpmd/issues/1056
|
||||
composerLock = ./composer.lock;
|
||||
vendorHash = "sha256-AahAs3Gq1OQ+CW3+rU8NnWcR3hKzVNq7s3llsO4mQ38=";
|
||||
vendorHash = "sha256-tiL8PL6Muc/i4Il1rCeEKenCmIEVn3rHFZInbUGQW9o=";
|
||||
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
versionCheckProgramArg = "--version";
|
||||
|
||||
Reference in New Issue
Block a user