{"record":{"id":"3634056619e8a76a","repo":"openai/codex","slug":"hdiutil-attach-failed-with-status-stderr","errorCode":null,"errorMessage":"`hdiutil attach` failed with {status}: {stderr}","messagePattern":"`hdiutil attach` failed with (.+?): (.+?)","errorType":"exception","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"codex-rs/cli/src/desktop_app/mac.rs","lineNumber":267,"sourceCode":"\n    if status.success() {\n        return Ok(());\n    }\n    anyhow::bail!(\"curl download failed with {status}\");\n}\n\nasync fn mount_dmg(dmg_path: &Path) -> anyhow::Result<PathBuf> {\n    let output = Command::new(\"hdiutil\")\n        .arg(\"attach\")\n        .arg(\"-nobrowse\")\n        .arg(\"-readonly\")\n        .arg(dmg_path)\n        .output()\n        .await\n        .context(\"failed to invoke `hdiutil attach`\")?;\n\n    if !output.status.success() {\n        anyhow::bail!(\n            \"`hdiutil attach` failed with {status}: {stderr}\",\n            status = output.status,\n            stderr = String::from_utf8_lossy(&output.stderr)\n        );\n    }\n\n    let stdout = String::from_utf8_lossy(&output.stdout);\n    parse_hdiutil_attach_mount_point(&stdout)\n        .map(PathBuf::from)\n        .with_context(|| format!(\"failed to parse mount point from hdiutil output:\\n{stdout}\"))\n}\n\nasync fn detach_dmg(mount_point: &Path) -> anyhow::Result<()> {\n    let status = Command::new(\"hdiutil\")\n        .arg(\"detach\")\n        .arg(mount_point)\n        .status()\n        .await","sourceCodeStart":249,"sourceCodeEnd":285,"githubUrl":"https://github.com/openai/codex/blob/339751715c64496cb86246bfb3935f40e309dd3d/codex-rs/cli/src/desktop_app/mac.rs#L249-L285","documentation":"Error \"`hdiutil attach` failed with {status}: {stderr}\" thrown in openai/codex.","triggerScenarios":"Thrown at codex-rs/cli/src/desktop_app/mac.rs:267 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"339751715c64496cb86246bfb3935f40e309dd3d","analyzedAt":"2026-08-25T05:35:09.876Z","schemaVersion":2},"datasetVersion":"2026-08-25T06:17:31.827Z"}