Summary
I'm maintaining FreeBSD port of rust-nighly, updating it to latest version ~bi-weekly. The current update (from 2026-05-11 to 2026-05-25) failed. The error suggests that it fails to access crates.io, so it makes sense to note that build is done without network access for obvious reasons of stability and reproducibility. I'm still bisecting the problem (on date level), and it's somewhere between 2026-05-17 and 2026-05-20.
Relevant build log excerpt:
Dist rust-analysis-nightly-wasm32-unknown-unknown
running: LD_LIBRARY_PATH="/work/usr/ports/lang/rust-nightly/work/_build/x86_64-unknown-freebsd/bootstrap-tools/x86_64-unknown-freebsd/release/deps" RUSTC="/work/usr/ports/lang/rust-nightly/work/bootstrap/bin/rustc" "/work/usr/ports/lang/rust-nightly/work/_build/x86_64-unknown-freebsd
/stage1-tools-bin/rust-installer" "generate" "--image-dir" "/work/usr/ports/lang/rust-nightly/work/_build/tmp/tarball/rust-analysis/wasm32-unknown-unknown/image" "--component-name=rust-analysis-wasm32-unknown-unknown" "--rel-manifest-dir=rustlib" "--legacy-manifest-dirs=rustlib,cargo
" "--product-name=Rust" "--success-message=rust-analysis installed." "--package-name=rust-analysis-nightly-wasm32-unknown-unknown" "--non-installed-overlay" "/work/usr/ports/lang/rust-nightly/work/_build/tmp/tarball/rust-analysis/wasm32-unknown-unknown/overlay" "--output-dir" "/work/
usr/ports/lang/rust-nightly/work/_build/dist" "--work-dir" "/work/usr/ports/lang/rust-nightly/work/_build/tmp/tarball/rust-analysis/wasm32-unknown-unknown" "--compression-formats" "xz" "--compression-profile" "balanced" (failure_mode=Exit) (created at src/bootstrap/src/core/build_ste
ps/tool.rs:1618:23, executed at src/bootstrap/src/utils/tarball.rs:421:13)
finished in 0.019 seconds
Vendoring sources to "/work/usr/ports/lang/rust-nightly/work/_build/tmp/tarball/rust-src/image/lib/rustlib/src/rust"
running: cd "/work/usr/ports/lang/rust-nightly/work/_build/tmp/tarball/rust-src/image/lib/rustlib/src/rust/library" && RUSTC="/work/usr/ports/lang/rust-nightly/work/bootstrap/bin/rustc" RUSTC_BOOTSTRAP="1" "/work/usr/ports/lang/rust-nightly/work/bootstrap/bin/cargo" "vendor" "--versioned-dirs" "vendor" (failure_mode=Exit) (created at src/bootstrap/src/core/build_steps/vendor.rs:131:23, executed at src/bootstrap/src/core/build_steps/vendor.rs:149:34)
Updating crates.io index
error: failed to sync
Caused by:
failed to load lockfile for /work/usr/ports/lang/rust-nightly/work/_build/tmp/tarball/rust-src/image/lib/rustlib/src/rust/library
Caused by:
failed to get `cfg-if` as a dependency of package `std v0.0.0 (/work/usr/ports/lang/rust-nightly/work/_build/tmp/tarball/rust-src/image/lib/rustlib/src/rust/library/std)`
Caused by:
failed to load source for dependency `cfg-if`
Caused by:
unable to update registry `crates-io`
Caused by:
download of config.json failed
Caused by:
curl failed
Caused by:
[6] Could not resolve hostname (Could not resolve host: index.crates.io)
Command `cd "/work/usr/ports/lang/rust-nightly/work/_build/tmp/tarball/rust-src/image/lib/rustlib/src/rust/library" && RUSTC="/work/usr/ports/lang/rust-nightly/work/bootstrap/bin/rustc" RUSTC_BOOTSTRAP="1" "/work/usr/ports/lang/rust-nightly/work/bootstrap/bin/cargo" "vendor" "--versioned-dirs" "vendor" (failure_mode=Exit)` failed with exit code 101
Created at: src/bootstrap/src/core/build_steps/vendor.rs:131:23
Executed at: src/bootstrap/src/core/build_steps/vendor.rs:149:34
--- STDOUT vvv
--- BACKTRACE vvv
0: <bootstrap::utils::exec::DeferredCommand>::finish_process
at ./src/bootstrap/src/utils/exec.rs:935:17
1: <bootstrap::utils::exec::DeferredCommand>::wait_for_output::<&bootstrap::utils::exec::ExecutionContext>
at ./src/bootstrap/src/utils/exec.rs:831:21
2: <bootstrap::utils::exec::ExecutionContext>::run
at ./src/bootstrap/src/utils/exec.rs:741:45
3: <bootstrap::utils::exec::BootstrapCommand>::run_capture_stdout::<&bootstrap::core::builder::Builder>
at ./src/bootstrap/src/utils/exec.rs:351:27
4: <bootstrap::core::build_steps::vendor::Vendor as bootstrap::core::builder::Step>::run
at ./src/bootstrap/src/core/build_steps/vendor.rs:149:34
5: <bootstrap::core::builder::Builder>::ensure::<bootstrap::core::build_steps::vendor::Vendor>
at ./src/bootstrap/src/core/builder/mod.rs:1595:36
6: <bootstrap::core::build_steps::dist::Src as bootstrap::core::builder::Step>::run
at ./src/bootstrap/src/core/build_steps/dist.rs:1215:30
7: <bootstrap::core::builder::Builder>::ensure::<bootstrap::core::build_steps::dist::Src>
at ./src/bootstrap/src/core/builder/mod.rs:1595:36
8: <bootstrap::core::build_steps::dist::Src as bootstrap::core::builder::Step>::make_run
at ./src/bootstrap/src/core/build_steps/dist.rs:1175:21
9: <bootstrap::core::builder::StepDescription>::maybe_run
at ./src/bootstrap/src/core/builder/mod.rs:476:13
10: bootstrap::core::builder::cli_paths::match_paths_to_steps_and_run
at ./src/bootstrap/src/core/builder/cli_paths.rs:141:22
11: <bootstrap::core::builder::Builder>::run_step_descriptions
at ./src/bootstrap/src/core/builder/mod.rs:1138:9
12: <bootstrap::core::builder::Builder>::execute_cli
at ./src/bootstrap/src/core/builder/mod.rs:1117:14
13: <bootstrap::Build>::build
at ./src/bootstrap/src/lib.rs:803:25
14: bootstrap::main
at ./src/bootstrap/src/bin/main.rs:130:11
15: <fn() as core::ops::function::FnOnce<()>>::call_once
at /rustc/ef0fb8a2563200e322fa4419f09f65a63742038c/library/core/src/ops/function.rs:250:5
16: std::sys::backtrace::__rust_begin_short_backtrace::<fn(), ()>
at /rustc/ef0fb8a2563200e322fa4419f09f65a63742038c/library/std/src/sys/backtrace.rs:166:18
17: std::rt::lang_start::<()>::{closure#0}
at /rustc/ef0fb8a2563200e322fa4419f09f65a63742038c/library/std/src/rt.rs:206:18
18: <&dyn core::ops::function::Fn<(), Output = i32> + core::marker::Sync + core::panic::unwind_safe::RefUnwindSafe as core::ops::function::FnOnce<()>>::call_once
at /rustc/ef0fb8a2563200e322fa4419f09f65a63742038c/library/core/src/ops/function.rs:287:21
19: std::panicking::catch_unwind::do_call::<&dyn core::ops::function::Fn<(), Output = i32> + core::marker::Sync + core::panic::unwind_safe::RefUnwindSafe, i32>
at /rustc/ef0fb8a2563200e322fa4419f09f65a63742038c/library/std/src/panicking.rs:581:40
20: std::panicking::catch_unwind::<i32, &dyn core::ops::function::Fn<(), Output = i32> + core::marker::Sync + core::panic::unwind_safe::RefUnwindSafe>
at /rustc/ef0fb8a2563200e322fa4419f09f65a63742038c/library/std/src/panicking.rs:544:19
21: std::panic::catch_unwind::<&dyn core::ops::function::Fn<(), Output = i32> + core::marker::Sync + core::panic::unwind_safe::RefUnwindSafe, i32>
at /rustc/ef0fb8a2563200e322fa4419f09f65a63742038c/library/std/src/panic.rs:359:14
22: std::rt::lang_start_internal::{closure#0}
at /rustc/ef0fb8a2563200e322fa4419f09f65a63742038c/library/std/src/rt.rs:175:24
23: std::panicking::catch_unwind::do_call::<std::rt::lang_start_internal::{closure#0}, isize>
at /rustc/ef0fb8a2563200e322fa4419f09f65a63742038c/library/std/src/panicking.rs:581:40
24: std::panicking::catch_unwind::<isize, std::rt::lang_start_internal::{closure#0}>
at /rustc/ef0fb8a2563200e322fa4419f09f65a63742038c/library/std/src/panicking.rs:544:19
25: std::panic::catch_unwind::<std::rt::lang_start_internal::{closure#0}, isize>
at /rustc/ef0fb8a2563200e322fa4419f09f65a63742038c/library/std/src/panic.rs:359:14
26: std::rt::lang_start_internal
at /rustc/ef0fb8a2563200e322fa4419f09f65a63742038c/library/std/src/rt.rs:171:5
27: std::rt::lang_start::<()>
at /rustc/ef0fb8a2563200e322fa4419f09f65a63742038c/library/std/src/rt.rs:205:5
28: main
29: __libc_start1
30: _start
at /usr/src/lib/csu/amd64/crt1_s.S:80:0
Traceback (most recent call last):
File "/work/usr/ports/lang/rust-nightly/work/rustc-nightly-src/x.py", line 53, in <module>
bootstrap.main()
File "/work/usr/ports/lang/rust-nightly/work/rustc-nightly-src/src/bootstrap/bootstrap.py", line 1425, in main
bootstrap(args)
File "/work/usr/ports/lang/rust-nightly/work/rustc-nightly-src/src/bootstrap/bootstrap.py", line 1383, in bootstrap
run(args, env=env, verbose=build.verbose, is_bootstrap=True)
File "/work/usr/ports/lang/rust-nightly/work/rustc-nightly-src/src/bootstrap/bootstrap.py", line 237, in run
raise RuntimeError(err)
RuntimeError: failed to run: /work/usr/ports/lang/rust-nightly/work/_build/bootstrap/debug/bootstrap dist --jobs=10
Excerpt from the build log of older version for reference (not there's no Vendoring sources step):
Dist rust-analysis-nightly-wasm32-unknown-unknown
running: LD_LIBRARY_PATH="/work/usr/ports/lang/rust-nightly/work/_build/x86_64-unknown-freebsd/bootstrap-tools/x86_64-unknown-freebsd/release/deps" RUSTC="/work/usr/ports/lang/rust-nightly/work/bootstrap/bin/rustc" "/work/usr/ports/lang/rust-nightly/work/_build/x86_64-unknown-freebsd
/stage1-tools-bin/rust-installer" "generate" "--image-dir" "/work/usr/ports/lang/rust-nightly/work/_build/tmp/tarball/rust-analysis/wasm32-unknown-unknown/image" "--component-name=rust-analysis-wasm32-unknown-unknown" "--rel-manifest-dir=rustlib" "--legacy-manifest-dirs=rustlib,cargo
" "--product-name=Rust" "--success-message=rust-analysis installed." "--package-name=rust-analysis-nightly-wasm32-unknown-unknown" "--non-installed-overlay" "/work/usr/ports/lang/rust-nightly/work/_build/tmp/tarball/rust-analysis/wasm32-unknown-unknown/overlay" "--output-dir" "/work/
usr/ports/lang/rust-nightly/work/_build/dist" "--work-dir" "/work/usr/ports/lang/rust-nightly/work/_build/tmp/tarball/rust-analysis/wasm32-unknown-unknown" "--compression-formats" "xz" "--compression-profile" "balanced" (failure_mode=Exit) (created at src/bootstrap/src/core/build_ste
ps/tool.rs:1618:23, executed at src/bootstrap/src/utils/tarball.rs:421:13)
finished in 0.019 seconds
Dist rust-src-nightly
running: LD_LIBRARY_PATH="/work/usr/ports/lang/rust-nightly/work/_build/x86_64-unknown-freebsd/bootstrap-tools/x86_64-unknown-freebsd/release/deps" RUSTC="/work/usr/ports/lang/rust-nightly/work/bootstrap/bin/rustc" "/work/usr/ports/lang/rust-nightly/work/_build/x86_64-unknown-freebsd
/stage1-tools-bin/rust-installer" "generate" "--image-dir" "/work/usr/ports/lang/rust-nightly/work/_build/tmp/tarball/rust-src/image" "--component-name=rust-src" "--rel-manifest-dir=rustlib" "--legacy-manifest-dirs=rustlib,cargo" "--product-name=Rust" "--success-message=rust-src inst
alled." "--package-name=rust-src-nightly" "--non-installed-overlay" "/work/usr/ports/lang/rust-nightly/work/_build/tmp/tarball/rust-src/overlay" "--output-dir" "/work/usr/ports/lang/rust-nightly/work/_build/dist" "--work-dir" "/work/usr/ports/lang/rust-nightly/work/_build/tmp/tarball
/rust-src" "--compression-formats" "xz" "--compression-profile" "balanced" (failure_mode=Exit) (created at src/bootstrap/src/core/build_steps/tool.rs:1618:23, executed at src/bootstrap/src/utils/tarball.rs:421:13)
finished in 6.401 seconds
Command used
make -C /usr/ports/lang/rust-nighly
Expected behaviour
Rust builds fine without any network access.
Actual behaviour
Rust fails to build without network access.
Bootstrap configuration (bootstrap.toml)
[build]
build-dir="/usr/ports/lang/rust-nightly/work/_build"
build-stage=2
doc-stage=2
test-stage=2
vendor=true
extended=true
python="/usr/local/bin/python3.11"
docs=false
verbose=2
profiler=true
target=["x86_64-unknown-freebsd","wasm32-unknown-unknown"]
cargo="/usr/ports/lang/rust-nightly/work/bootstrap/bin/cargo"
rustc="/usr/ports/lang/rust-nightly/work/bootstrap/bin/rustc"
tools=["analysis","cargo","clippy","rust-analyzer","rustdoc","rustfmt","src","miri","cargo-miri"]
ccache=false
[install]
prefix="/usr/ports/lang/rust-nightly/prefix"
sysconfdir="/usr/ports/lang/rust-nightly/prefix/etc"
[rust]
channel="nightly"
default-linker="cc"
deny-warnings=false
verbose-tests=true
download-rustc=false
lld=true
lto="thin"
remap-debuginfo=true
[llvm]
download-ci-llvm=false
clang=true
thin-lto=true
ninja=true
[target.x86_64-unknown-freebsd]
ar="ar"
cc="cc"
cxx="c++"
linker="cc"
[target.wasm32-unknown-unknown]
ar="ar"
cc="/usr/ports/lang/rust-nightly/work/_build/x86_64-unknown-freebsd/llvm/bin/clang"
cxx="/usr/ports/lang/rust-nightly/work/_build/x86_64-unknown-freebsd/llvm/bin/clang++"
linker="/usr/ports/lang/rust-nightly/work/_build/x86_64-unknown-freebsd/llvm/bin/clang"
[dist]
compression-formats=["xz"]
src-tarball=false
Operating system
FreeBSD 15.0
HEAD
known-good: d3cd040
known-failing: e50aa6f
Additional context
Full build log: https://gist.github.com/AMDmi3/f2e1ffaca57d4942fafae50a68e640ff
Summary
I'm maintaining FreeBSD port of rust-nighly, updating it to latest version ~bi-weekly. The current update (from 2026-05-11 to 2026-05-25) failed. The error suggests that it fails to access crates.io, so it makes sense to note that build is done without network access for obvious reasons of stability and reproducibility. I'm still bisecting the problem (on date level), and it's somewhere between 2026-05-17 and 2026-05-20.
Relevant build log excerpt:
Excerpt from the build log of older version for reference (not there's no
Vendoring sourcesstep):Command used
make -C /usr/ports/lang/rust-nighlyExpected behaviour
Rust builds fine without any network access.
Actual behaviour
Rust fails to build without network access.
Bootstrap configuration (bootstrap.toml)
Operating system
FreeBSD 15.0
HEAD
known-good: d3cd040
known-failing: e50aa6f
Additional context
Full build log: https://gist.github.com/AMDmi3/f2e1ffaca57d4942fafae50a68e640ff