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

  1. 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.