mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-23 15:33:13 +00:00
Merge pull request #87314 from matthewbauer/bazel-flat
build-bazel-package: switch hash mode to “flat”
This commit is contained in:
commit
43545032af
@ -335,6 +335,15 @@ php.override {
|
|||||||
your configuration simply remove the quotes around the numbers.
|
your configuration simply remove the quotes around the numbers.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
When using <literal>buildBazelPackage</literal> from Nixpkgs,
|
||||||
|
<literal>flat</literal> hash mode is now used for dependencies
|
||||||
|
instead of <literal>recursive</literal>. This is to better allow
|
||||||
|
using hashed mirrors where needed. As a result, these hashes
|
||||||
|
will have changed.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
@ -76,7 +76,7 @@ in buildBazelPackage rec {
|
|||||||
rm -f "$bazelOut"/java.log "$bazelOut"/java.log.*
|
rm -f "$bazelOut"/java.log "$bazelOut"/java.log.*
|
||||||
'';
|
'';
|
||||||
|
|
||||||
sha256 = "1bn7nhv5pag8fdm8l8nvgg3fzvhpy2yv9yl2slrb16lckxzha3v6";
|
sha256 = "0r11kbyp1ambgcj35gvjjmxrsrdg7b9jb9sq3kih4lik7zyljp25";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildAttrs = {
|
buildAttrs = {
|
||||||
|
@ -42,9 +42,11 @@ in stdenv.mkDerivation (fBuildAttrs // {
|
|||||||
inherit name bazelFlags bazelBuildFlags bazelFetchFlags bazelTarget;
|
inherit name bazelFlags bazelBuildFlags bazelFetchFlags bazelTarget;
|
||||||
|
|
||||||
deps = stdenv.mkDerivation (fFetchAttrs // {
|
deps = stdenv.mkDerivation (fFetchAttrs // {
|
||||||
name = "${name}-deps";
|
name = "${name}-deps.tar.gz";
|
||||||
inherit bazelFlags bazelBuildFlags bazelFetchFlags bazelTarget;
|
inherit bazelFlags bazelBuildFlags bazelFetchFlags bazelTarget;
|
||||||
|
|
||||||
|
impureEnvVars = lib.fetchers.proxyImpureEnvVars;
|
||||||
|
|
||||||
nativeBuildInputs = fFetchAttrs.nativeBuildInputs or [] ++ [ bazel ];
|
nativeBuildInputs = fFetchAttrs.nativeBuildInputs or [] ++ [ bazel ];
|
||||||
|
|
||||||
preHook = fFetchAttrs.preHook or "" + ''
|
preHook = fFetchAttrs.preHook or "" + ''
|
||||||
@ -120,9 +122,9 @@ in stdenv.mkDerivation (fBuildAttrs // {
|
|||||||
ln -sf "$new_target" "$symlink"
|
ln -sf "$new_target" "$symlink"
|
||||||
done
|
done
|
||||||
|
|
||||||
cp -r $bazelOut/external $out
|
echo '${bazel.name}' > $bazelOut/external/.nix-bazel-version
|
||||||
|
|
||||||
echo '${bazel.name}' > $out/.nix-bazel-version
|
(cd $bazelOut/ && tar czf $out --sort=name --mtime='@1' --owner=0 --group=0 --numeric-owner external/)
|
||||||
|
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
@ -130,7 +132,6 @@ in stdenv.mkDerivation (fBuildAttrs // {
|
|||||||
dontFixup = true;
|
dontFixup = true;
|
||||||
allowedRequisites = [];
|
allowedRequisites = [];
|
||||||
|
|
||||||
outputHashMode = "recursive";
|
|
||||||
outputHashAlgo = "sha256";
|
outputHashAlgo = "sha256";
|
||||||
outputHash = fetchAttrs.sha256;
|
outputHash = fetchAttrs.sha256;
|
||||||
});
|
});
|
||||||
@ -146,14 +147,15 @@ in stdenv.mkDerivation (fBuildAttrs // {
|
|||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
mkdir -p "$bazelOut"
|
mkdir -p "$bazelOut"
|
||||||
|
|
||||||
test "${bazel.name}" = "$(<$deps/.nix-bazel-version)" || {
|
(cd $bazelOut && tar xfz $deps)
|
||||||
|
|
||||||
|
test "${bazel.name}" = "$(<$bazelOut/external/.nix-bazel-version)" || {
|
||||||
echo "fixed output derivation was built for a different bazel version" >&2
|
echo "fixed output derivation was built for a different bazel version" >&2
|
||||||
echo " got: $(<$deps/.nix-bazel-version)" >&2
|
echo " got: $(<$bazelOut/external/.nix-bazel-version)" >&2
|
||||||
echo "expected: ${bazel.name}" >&2
|
echo "expected: ${bazel.name}" >&2
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
cp -r $deps $bazelOut/external
|
|
||||||
chmod -R +w $bazelOut
|
chmod -R +w $bazelOut
|
||||||
find $bazelOut -type l | while read symlink; do
|
find $bazelOut -type l | while read symlink; do
|
||||||
ln -sf $(readlink "$symlink" | sed "s,NIX_BUILD_TOP,$NIX_BUILD_TOP,") "$symlink"
|
ln -sf $(readlink "$symlink" | sed "s,NIX_BUILD_TOP,$NIX_BUILD_TOP,") "$symlink"
|
||||||
|
@ -36,7 +36,7 @@ let
|
|||||||
bazelTarget = ":install";
|
bazelTarget = ":install";
|
||||||
|
|
||||||
fetchAttrs = {
|
fetchAttrs = {
|
||||||
sha256 = "0wb2gh9ji8bgq4s9ci9x017dybxqzjhncpw33b1wjksm2yhbkvlz";
|
sha256 = "0jlgmwcanfkhkwvh4vxibpi0zyyl6xkjzcz2xqn7raympqscq81a";
|
||||||
};
|
};
|
||||||
|
|
||||||
bazelFlags = [
|
bazelFlags = [
|
||||||
|
@ -61,7 +61,7 @@ let
|
|||||||
bazelTarget = ":pip_pkg";
|
bazelTarget = ":pip_pkg";
|
||||||
|
|
||||||
fetchAttrs = {
|
fetchAttrs = {
|
||||||
sha256 = "0135nxxvkmjzpd80r1g9fdkk9h62g0xlvp32g5zgk0hkma5kq0bx";
|
sha256 = "0nmk7sbgl1ag20333v9r7l5cka6wapbskikfhi3y5a8l9f6hxkl3";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildAttrs = {
|
buildAttrs = {
|
||||||
|
@ -300,9 +300,9 @@ let
|
|||||||
|
|
||||||
# cudaSupport causes fetch of ncclArchive, resulting in different hashes
|
# cudaSupport causes fetch of ncclArchive, resulting in different hashes
|
||||||
sha256 = if cudaSupport then
|
sha256 = if cudaSupport then
|
||||||
"1qygfcvvn9vysap9nk6xccxi9mgmzyxiywz6k456f811l1v70p2c"
|
"09j57w6kc0vkfcdwr0qggy3qgrgq82kfa2jrwvvcnij4bl3wj40j"
|
||||||
else
|
else
|
||||||
"0kfjanw0mfbh30vi1ms2xlg8yp429cbyfriik6yxd5cla2pncg2j";
|
"14g8z49qz7d8n1c2mcsfhr7yqpcy7mhmpm6hgmqvpgb8vm7yvwrc";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildAttrs = {
|
buildAttrs = {
|
||||||
|
@ -294,9 +294,9 @@ let
|
|||||||
|
|
||||||
# cudaSupport causes fetch of ncclArchive, resulting in different hashes
|
# cudaSupport causes fetch of ncclArchive, resulting in different hashes
|
||||||
sha256 = if cudaSupport then
|
sha256 = if cudaSupport then
|
||||||
"0hg3ysy644950a34j28hrb317cz8gcbb9n84d36wdailvnlshghb"
|
"1kqk1gx5g63kb2zdj392x6mnpbrmgqghrdv597aipn7s23xzj8pd"
|
||||||
else
|
else
|
||||||
"1gy4pz9kn30wb9c4a9584fibb88c3h38y3dqa99yw1lbsbyyi28c";
|
"1plpcm2ydpajsrxdvmmpfy7l0gfdir78hap72w4k7ddm6d3rm2fv";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildAttrs = {
|
buildAttrs = {
|
||||||
|
@ -60,7 +60,7 @@ buildBazelPackage rec {
|
|||||||
sed -e '/^FILE:@bazel_gazelle_go_repository_tools.*/d' -i $bazelOut/external/\@*.marker
|
sed -e '/^FILE:@bazel_gazelle_go_repository_tools.*/d' -i $bazelOut/external/\@*.marker
|
||||||
'';
|
'';
|
||||||
|
|
||||||
sha256 = "0wj573dcirssr2cmq90b4yl57mv3gsxaj1s26afvkz1dvyxmq7sz";
|
sha256 = "0ili0123xcl0mjcrn4r1r1q9d7a8a3bbh9r3zhlshl39awfm4r2d";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildAttrs = {
|
buildAttrs = {
|
||||||
|
@ -64,7 +64,7 @@ buildBazelPackage rec {
|
|||||||
sed -e '/^FILE:@bazel_gazelle_go_repository_tools.*/d' -i $bazelOut/external/\@*.marker
|
sed -e '/^FILE:@bazel_gazelle_go_repository_tools.*/d' -i $bazelOut/external/\@*.marker
|
||||||
'';
|
'';
|
||||||
|
|
||||||
sha256 = "141kw2zpr612xdcrg6x9kslg4d5b3fbpzx0vgp3lqwdihfj3sc1l";
|
sha256 = "1hzb84zxav68ysdwkimaaz0b9rq95k3bgifw01m644v7idabrz50";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildAttrs = {
|
buildAttrs = {
|
||||||
|
Loading…
Reference in New Issue
Block a user