refactor(shells): simplify environment variable declarations

Refactored the environment variable setup by consolidating into a single `env` map for better clarity.
- Removed `TEE_LD_LIBRARY_PATH` and inlined its logic directly within `LD_LIBRARY_PATH`.
- Improved structure and readability of configuration-specific variables like `QCNL_CONF_PATH`.

Let us run directly on x86_64:
```
❯ cargo run --bin verify-era-proof-attestation -- \
            --rpc https://mainnet.era.zksync.io \
            --continuous 493220 \
            --attestation-policy-file bin/verify-era-proof-attestation/examples/attestation_policy.yaml \
            --tee-types sgx \
            --log-level info
```
This commit is contained in:
Harald Hoyer 2025-04-14 17:07:35 +02:00
parent 9b9acfc0c6
commit 7b1c386e14
Signed by: harald
GPG key ID: F519A1143B3FBE32

View file

@ -42,31 +42,23 @@ mkShell {
google-cloud-sdk
];
TEE_LD_LIBRARY_PATH = lib.makeLibraryPath (
lib.optionals (stdenv.hostPlatform.system == "x86_64-linux") [
pkgs.curl
nixsgx.sgx-dcap
nixsgx.sgx-dcap.quote_verify
nixsgx.sgx-dcap.default_qpl
]
);
env = {
QCNL_CONF_PATH =
if (stdenv.hostPlatform.system != "x86_64-linux") then
""
else
"${nixsgx.sgx-dcap.default_qpl}/etc/sgx_default_qcnl.conf";
OPENSSL_NO_VENDOR = "1";
RUST_SRC_PATH = "${toolchain_with_src}/lib/rustlib/src/rust/library";
RUST_SRC_PATH = "${toolchain_with_src}/lib/rustlib/src/rust/";
};
shellHook = ''
if [ "x$NIX_LD" = "x" ]; then
export NIX_LD=$(<${stdenv.cc}/nix-support/dynamic-linker)
fi
if [ "x$NIX_LD_LIBRARY_PATH" = "x" ]; then
export NIX_LD_LIBRARY_PATH="$TEE_LD_LIBRARY_PATH"
else
export NIX_LD_LIBRARY_PATH="$NIX_LD_LIBRARY_PATH:$TEE_LD_LIBRARY_PATH"
fi
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${
pkgs.lib.makeLibraryPath (lib.optionals (stdenv.hostPlatform.system == "x86_64-linux") [
pkgs.curl
nixsgx.sgx-dcap
nixsgx.sgx-dcap.quote_verify
nixsgx.sgx-dcap.default_qpl
])}"
'';
}