mirror of
https://github.com/edgelesssys/constellation.git
synced 2024-12-27 00:19:36 -05:00
65 lines
1.2 KiB
Nix
65 lines
1.2 KiB
Nix
{ nixpkgs
|
|
, symlinkJoin
|
|
, pkgs
|
|
, bazel_7
|
|
, lib
|
|
, substituteAll
|
|
, writeShellScriptBin
|
|
, bash
|
|
, coreutils
|
|
, diffutils
|
|
, file
|
|
, findutils
|
|
, gawk
|
|
, gnugrep
|
|
, gnupatch
|
|
, gnused
|
|
, gnutar
|
|
, gzip
|
|
, python3
|
|
, unzip
|
|
, which
|
|
, zip
|
|
}:
|
|
let
|
|
defaultShellUtils = [
|
|
bash
|
|
coreutils
|
|
diffutils
|
|
file
|
|
findutils
|
|
gawk
|
|
gnugrep
|
|
gnupatch
|
|
gnused
|
|
gnutar
|
|
gzip
|
|
python3
|
|
unzip
|
|
which
|
|
zip
|
|
];
|
|
bazel_with_action_env = bazel_7.overrideAttrs (oldAttrs: {
|
|
# https://github.com/NixOS/nixpkgs/pull/262152#issuecomment-1879053113
|
|
patches = (oldAttrs.patches or [ ]) ++ [
|
|
(substituteAll {
|
|
src = "${nixpkgs}/pkgs/development/tools/build-managers/bazel/bazel_6/actions_path.patch";
|
|
actionsPathPatch = lib.makeBinPath defaultShellUtils;
|
|
})
|
|
];
|
|
});
|
|
in
|
|
symlinkJoin {
|
|
name = "bazel_7";
|
|
paths = [ bazel_with_action_env ];
|
|
buildInputs = [ pkgs.makeWrapper ];
|
|
# This wrapper is required in Nix shells to make them work with
|
|
# bazel's --incompatible_sandbox_hermetic_tmp flag.
|
|
# See https://github.com/bazelbuild/bazel/issues/5900
|
|
postBuild = ''
|
|
wrapProgram $out/bin/bazel \
|
|
--unset TMPDIR \
|
|
--unset TMP
|
|
'';
|
|
}
|