nimbus-eth2/nix/shell.nix

43 lines
1.0 KiB
Nix

{ pkgs ? import <nixpkgs> {}}:
let
mkdocs-packages = ps: with ps; [
mkdocs
mkdocs-material
mkdocs-material-extensions
pymdown-extensions
];
mkdocs-python = pkgs.python3.withPackages mkdocs-packages;
in pkgs.mkShell {
buildInputs = with pkgs; [
figlet
git
git-lfs
gnumake
getopt
# For the local simulation
openssl # for generating the JWT file
lsof # for killing processes by port
killall # for killing processes manually
curl # for working with the node APIs
openjdk # for running web3signer
mkdocs-python
] ++ lib.optionals (!stdenv.isDarwin) [
lsb-release
];
shellHook = ''
# By default, the Nix wrapper scripts for executing the system compilers
# will erase `-march=native` because this introduces impurity in the build.
# For the purposes of compiling Nimbus, this behavior is not desired:
export NIX_ENFORCE_NO_NATIVE=0
export USE_SYSTEM_GETOPT=1
export MAKEFLAGS="-j$NIX_BUILD_CORES"
figlet "Welcome to Nimbus-eth2"
'';
}