mirror of
https://github.com/digital-asset/daml.git
synced 2024-11-10 10:46:11 +03:00
6cf5458e30
* Remove unused npm_nix * Use node_nix directly on Unix rules_nodejs requires a vendored node to contain the node distribution in a subdirectory of the provided external repository. With the default node Nix package this is not the case. The nodejs_dev_env workspace used an intermediate repository rule to fulfill these requirements. Occasionally, this caused flakiness on CI. This change fulfills this requirement on the Nix side, so that Bazel can consume the provided Nix derivation directly. CHANGELOG_BEGIN CHANGELOG_END * Avoid collision with dev-env tools like license-checker * buildifier-fix * Add comment motivating use of `@node_nix` on Unix. * Document npm-cli patch Co-authored-by: Andreas Herrmann <andreash87@gmx.ch>
107 lines
2.2 KiB
Nix
107 lines
2.2 KiB
Nix
# Bazel MUST only use this file to source dependencies
|
|
#
|
|
# This allows CI to pre-build and cache the build outputs
|
|
{ system ? builtins.currentSystem
|
|
, pkgs ? import ./nixpkgs.nix { inherit system; }
|
|
}:
|
|
let shared = rec {
|
|
inherit (pkgs)
|
|
coreutils
|
|
curl
|
|
docker
|
|
gawk
|
|
gnutar
|
|
grpc
|
|
grpcurl
|
|
gzip
|
|
hlint
|
|
imagemagick
|
|
jdk8
|
|
jq
|
|
netcat-gnu
|
|
nodejs
|
|
patchelf
|
|
postgresql_9_6
|
|
protobuf3_8
|
|
python3
|
|
zip
|
|
;
|
|
|
|
scala = pkgs.scala_2_12;
|
|
|
|
# We need to have a file in GOPATH that we can use as
|
|
# root_file in go_wrap_sdk.
|
|
go = pkgs.go.overrideAttrs (oldAttrs: {
|
|
doCheck = false;
|
|
postFixup = ''touch $out/share/go/ROOT'';
|
|
});
|
|
|
|
ghc = pkgs.haskell.packages.ghc865;
|
|
|
|
# GHC configured for static linking only.
|
|
ghcStatic = (import ./ghc.nix { inherit pkgs; }).ghc.override { enableShared = false; };
|
|
|
|
|
|
# Java 8 development
|
|
mvn = pkgs.writeScriptBin "mvn" ''
|
|
exec ${pkgs.maven}/bin/mvn ''${MVN_SETTINGS:+-s "$MVN_SETTINGS"} "$@"
|
|
'';
|
|
|
|
# rules_nodejs expects nodejs in a subdirectory of a repository rule.
|
|
# We use a linkFarm to fulfill this requirement.
|
|
nodejsNested = pkgs.linkFarm "nodejs" [ { name = "node_nix"; path = pkgs.nodejs; }];
|
|
|
|
sass = pkgs.sass;
|
|
|
|
sphinx183 = pkgs.python3Packages.sphinx;
|
|
|
|
# Custom combination of latex packages for our latex needs
|
|
texlive = pkgs.texlive.combine {
|
|
inherit (pkgs.texlive)
|
|
bera
|
|
capt-of
|
|
collection-fontsrecommended
|
|
collection-luatex
|
|
datetime
|
|
enumitem
|
|
environ
|
|
epigraph
|
|
eqparbox
|
|
eulervm
|
|
fancyhdr
|
|
fmtcount
|
|
fncychap
|
|
footmisc
|
|
footnotebackref
|
|
framed
|
|
latexmk
|
|
lipsum
|
|
mathpartir
|
|
mathpazo
|
|
mnsymbol
|
|
multirow
|
|
needspace
|
|
palatino
|
|
scheme-small
|
|
tabulary
|
|
threeparttable
|
|
tikzsymbols
|
|
titlesec
|
|
tocbibind
|
|
todonotes
|
|
trimspaces
|
|
varwidth
|
|
wrapfig
|
|
xargs
|
|
;
|
|
};
|
|
|
|
bazel-cc-toolchain = pkgs.callPackage ./tools/bazel-cc-toolchain {};
|
|
};
|
|
in shared // (if pkgs.stdenv.isLinux then {
|
|
inherit (pkgs)
|
|
glibcLocales
|
|
;
|
|
ghcStaticDwarf = shared.ghcStatic.override { enableDwarf = true; };
|
|
} else {})
|