mirror of
https://github.com/status-im/nimbus-eth2.git
synced 2025-01-09 13:56:23 +00:00
Jakub Sokołowski
4a1a2c8196
This way we can actually build and run a node using just: ```sh nix run 'github:status-im/nimbus-eth2?submodules=1' ``` The `?submodules=1` part should eventually not be necessary. For more details see: https://github.com/NixOS/nix/issues/4423 Signed-off-by: Jakub Sokołowski <jakub@status.im>
43 lines
1.0 KiB
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"
|
|
'';
|
|
}
|