Skip to content

Nix environment build: Environment build time report, and project build failure. #301

Open
@Ben-PH

Description

@Ben-PH

Pinging @markoburcul in reference to #275

This is a writeup on the time it takes to go from a git clone to a ready build environment, as well as what seems to be a rust-version issue.

The process is to clone the repo, make a .envrc file containing use flake, and activate it via the use of direnv`

My cli prompt indicates that on completion I have rust v1.82.0:

zerokit on  master [!?] via 🦀 v1.82.0 via ❄️  impure (nix-shell-env)
➜

I tried finding an approach that would capture timestamped logs, but I'm too much of a nix-noob to find something that works properly.

The total time to setup the development/build environment is about 36m

about 3m into it, it began building llvm-18.1.8, which took about 12m

following that build, it entered the check phase for llvm, which took about 5m

following that, it was setting up the rust toolchain.

once that was done, about 1 or maybe two mins of various items.

I get a build failure that recommends adding cargo-features = ["edition2024"] to the top. I did that, and tried a build, and got the following error message:

thread 'main' panicked at cargo-auditable/src/collect_audit_data.rs:77:9:
cargo metadata failure:     Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
 Downloading crates ...
error: failed to download `hex-literal v1.0.0`

Caused by:
  unable to get packages from source

Caused by:
  failed to parse manifest at `/home/ben/.cargo/registry/src/index.crates.io-6f17d22bba15001f/hex-literal-1.0.0/Cargo.toml`

Caused by:
  feature `edition2024` is required

  The package requires the Cargo feature called `edition2024`, but that feature is not stabilized in this version of Cargo (1.82.0 (8f40fc59f 2024-08-21)).
  Consider trying a more recent nightly release.
  See https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#edition-2024 for more information about the status of this feature.

note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
error: could not compile `rln-wasm` (lib)
warning: build failed, waiting for other jobs to finish...
thread 'main' panicked at cargo-auditable/src/collect_audit_data.rs:77:9:
cargo metadata failure:     Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
 Downloading crates ...
error: failed to download `hex-literal v1.0.0`

Caused by:
  unable to get packages from source

Caused by:
  failed to parse manifest at `/home/ben/.cargo/registry/src/index.crates.io-6f17d22bba15001f/hex-literal-1.0.0/Cargo.toml`

Caused by:
  feature `edition2024` is required

  The package requires the Cargo feature called `edition2024`, but that feature is not stabilized in this version of Cargo (1.82.0 (8f40fc59f 2024-08-21)).
  Consider trying a more recent nightly release.
  See https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#edition-2024 for more information about the status of this feature.

note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
error: could not compile `rln-cli` (bin "rln-cli")

I tried playing around with the flake, but I'm not so sure about how to get it following a more recent nightly. At this stage, no clear indications that compile time is problematic.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions