diff --git a/.envrc b/.envrc index 3851773ce..720e01933 100644 --- a/.envrc +++ b/.envrc @@ -1,5 +1,5 @@ -if ! has nix_direnv_version || ! nix_direnv_version 2.2.0; then - source_url "https://raw.githubusercontent.com/nix-community/nix-direnv/2.2.0/direnvrc" "sha256-5EwyKnkJNQeXrRkYbwwRBcXbibosCJqyIUuz9Xq+LRc=" +if ! has nix_direnv_version || ! nix_direnv_version 3.0.6; then + source_url "https://raw.githubusercontent.com/nix-community/nix-direnv/3.0.6/direnvrc" "sha256-RYcUJaRMf8oF5LznDrlCXbkOQrywm0HDv1VjYGaJGdM=" fi -nix_direnv_watch_file ./flake-shell.nix + use flake diff --git a/flake.lock b/flake.lock index 9f74bf6c2..c6222f6a0 100644 --- a/flake.lock +++ b/flake.lock @@ -198,17 +198,17 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1719317636, - "narHash": "sha256-bu0xbu2Z6DDzA9LGV81yJunIti6r7tjUImeR8orAL/I=", + "lastModified": 1726463316, + "narHash": "sha256-gI9kkaH0ZjakJOKrdjaI/VbaMEo9qBbSUl93DnU7f4c=", "owner": "nixos", "repo": "nixpkgs", - "rev": "9c513fc6fb75142f6aec6b7545cb8af2236b80f5", + "rev": "99dc8785f6a0adac95f5e2ab05cc2e1bf666d172", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixpkgs-unstable", "repo": "nixpkgs", + "rev": "99dc8785f6a0adac95f5e2ab05cc2e1bf666d172", "type": "github" } }, diff --git a/flake.nix b/flake.nix index 748a6cac6..2c9a66116 100644 --- a/flake.nix +++ b/flake.nix @@ -10,7 +10,7 @@ # packages nixpkgs.url = "github:nixos/nixpkgs/24.05"; nixpkgs-2311.url = "github:nixos/nixpkgs/23.11"; - nixpkgs-unstable.url = "github:nixos/nixpkgs/nixpkgs-unstable"; + nixpkgs-unstable.url = "github:nixos/nixpkgs?branch=nixpkgs-unstable&rev=99dc8785f6a0adac95f5e2ab05cc2e1bf666d172"; foundry-nix = { url = "github:shazow/foundry.nix/monthly"; diff --git a/pkgs/foundry/default.nix b/pkgs/foundry/default.nix index 5ee3aff51..84d5f1c4f 100644 --- a/pkgs/foundry/default.nix +++ b/pkgs/foundry/default.nix @@ -10,24 +10,16 @@ }: rustPlatform.buildRustPackage rec { pname = "foundry"; - version = "nightly-${builtins.substring 0 7 src.rev}"; + version = "2acca4e379793539db80e032d76ffe0110298b"; src = fetchFromGitHub { owner = "foundry-rs"; repo = "foundry"; - rev = "0688b5ad19a637303c038d1a66aec62a73713e20"; - hash = "sha256-OIsUzJVNcb2nVCYU/BdGGGICEg9Cr9LXc8zzN2JSb8g="; + rev = "nightly-fe${version}"; + hash = "sha256-saC0XF4iBNXn9BxYlt1e8WB4t3NXptEFaREKgFsPMs0="; }; - cargoLock = { - lockFile = "${src}/Cargo.lock"; - outputHashes = { - "alloy-consensus-0.1.0" = "sha256-rHDLt0N6VIAlg2EKEdF0S2S8XqJebRlIB7owyGQ04aA="; - "ethers-2.0.11" = "sha256-ySrCZOiqOcDVH5T7gbimK6Bu7A2OCcU64ZL1RfFPrBc="; - "revm-3.5.0" = "sha256-gdDJq2ZyIkMhTgMNz45YJXnopF/xxt3CaSd/eYSDGcY="; - "revm-inspectors-0.1.0" = "sha256-mH6On3cjKLT14S+5dxB1G5lcf5PBtz0KcusMxOtRRWA="; - }; - }; + cargoHash = "sha256-nfuyl36awAlDnqQmSjKXE/yQ99Asl357S0i8Zn+0WAA="; env = { # Make svm-rs use local release list rather than fetching from non-reproducible URL. @@ -69,10 +61,11 @@ rustPlatform.buildRustPackage rec { doCheck = false; meta = with lib; { - description = "A portable, modular toolkit for Ethereum application development written in Rust."; - homepage = "https://github.com/foundry-rs/foundry"; + description = "Foundry is a blazing fast, portable and modular toolkit for Ethereum application development written in Rust"; + homepage = "https://github.com/foundry-rs/foundry/"; license = with licenses; [asl20 mit]; maintainers = with maintainers; [mitchmindtree]; + mainProgram = "foundry"; # For now, solc binaries are only built for x86_64. # Track darwin-aarch64 here: # https://github.com/ethereum/solidity/issues/12291