2019-04-04 11:33:38 +03:00
|
|
|
# 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; }
|
|
|
|
}:
|
2019-08-13 21:00:14 +03:00
|
|
|
let shared = rec {
|
2019-04-04 11:33:38 +03:00
|
|
|
inherit (pkgs)
|
|
|
|
curl
|
|
|
|
docker
|
|
|
|
gawk
|
|
|
|
gnutar
|
|
|
|
gzip
|
|
|
|
hlint
|
|
|
|
imagemagick
|
|
|
|
jdk8
|
|
|
|
jq
|
|
|
|
nodejs
|
|
|
|
patchelf
|
2019-06-17 10:40:28 +03:00
|
|
|
postgresql
|
2019-04-04 11:33:38 +03:00
|
|
|
protobuf3_5
|
2019-07-05 17:04:47 +03:00
|
|
|
python3
|
2019-04-04 11:33:38 +03:00
|
|
|
zip
|
|
|
|
;
|
|
|
|
|
2019-06-27 19:47:42 +03:00
|
|
|
scala = pkgs.scala_2_12;
|
|
|
|
|
2019-05-07 14:55:30 +03:00
|
|
|
# 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'';
|
|
|
|
});
|
|
|
|
|
2019-04-04 11:33:38 +03:00
|
|
|
# the GHC version we use plus custom overrides to sync with the
|
|
|
|
# stackage version as specified in stack.yaml. Prefer to use this for
|
|
|
|
# haskell binaries to keep the dev-env closure size as small
|
|
|
|
# as possible.
|
|
|
|
ghc = import ./ghc.nix { inherit pkgs; };
|
|
|
|
|
2019-07-01 14:26:19 +03:00
|
|
|
# GHC configured for static linking only.
|
|
|
|
ghcStatic = ghc.ghc.override { enableShared = false; };
|
2019-04-04 11:33:38 +03:00
|
|
|
|
2019-04-15 18:53:05 +03:00
|
|
|
|
|
|
|
# Java 8 development
|
|
|
|
mvn = pkgs.writeScriptBin "mvn" ''
|
|
|
|
exec ${pkgs.maven}/bin/mvn ''${MVN_SETTINGS:+-s "$MVN_SETTINGS"} "$@"
|
|
|
|
'';
|
|
|
|
|
2019-04-04 11:33:38 +03:00
|
|
|
# The sass derivation in nixos-18.09 is broken, so we add our own
|
|
|
|
# created with bundix.
|
|
|
|
sass = pkgs.callPackage ./overrides/sass {};
|
|
|
|
|
|
|
|
sphinx183 = import ./tools/sphinx183 {
|
|
|
|
inherit pkgs;
|
2019-06-21 20:16:14 +03:00
|
|
|
pythonPackages = pkgs.python37Packages;
|
2019-04-04 11:33:38 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
# 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 {};
|
2019-08-13 21:00:14 +03:00
|
|
|
};
|
|
|
|
in shared // (if pkgs.stdenv.isLinux then {
|
2019-04-04 11:33:38 +03:00
|
|
|
inherit (pkgs)
|
|
|
|
glibcLocales
|
|
|
|
;
|
2019-08-13 21:00:14 +03:00
|
|
|
ghcStaticDwarf = shared.ghcStatic.override { enableDwarf = true; };
|
2019-04-04 11:33:38 +03:00
|
|
|
} else {})
|