DioxusLabs/dioxus · error · anyhow::Error
`hdiutil create` failed with exit code: {status}
Error message
`hdiutil create` failed with exit code: {status} What it means
`bundle_macos_dmg` runs `hdiutil create` to build the .dmg from the staged folder; it bails when hdiutil exits non-zero. This fires after hdiutil was found and executed but failed internally — common causes are invalid volume names, missing source folder, or disk space/permission problems.
Source
Thrown at packages/cli/src/bundler/macos.rs:338
let status = Command::new("hdiutil")
.args([
"create",
"-volname",
bundle_name,
"-srcfolder",
&staging_path.display().to_string(),
"-ov",
"-format",
"UDZO",
&dmg_path.display().to_string(),
])
.status()
.await
.context("Failed to execute `hdiutil create`")?;
if !status.success() {
bail!("`hdiutil create` failed with exit code: {status}");
}
tracing::info!("DMG created at {}", dmg_path.display());
let signing_identity = setup_keychain(macos_settings.signing_identity.as_deref()).await?;
if let Some(identity) = &signing_identity {
tracing::info!("Signing DMG with identity: {}", identity.identity);
sign_paths(
identity,
vec![SignTarget {
path: dmg_path.clone(),
}],
&macos_settings,
)
.await?;
let should_notarize =
std::env::var("APPLE_ID").is_ok() || std::env::var("APPLE_API_KEY").is_ok();View on GitHub (pinned to 24f6a829df)
Solutions
- hdiutil create failed. Check for disk space, valid paths, and that no DMG is already mounted at the target.
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at packages/cli/src/bundler/macos.rs:338 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of DioxusLabs/dioxus@24f6a829df (2026-08-23).
Data as JSON: /api/errors/92d66abc2c7f90aa.
Report an issue: GitHub.