DioxusLabs/dioxus · error · anyhow::Error
linuxdeploy failed with exit code {:?} stdout: {} stderr: {}
Error message
linuxdeploy failed with exit code {:?}
stdout:
{}
stderr:
{} What it means
The linuxdeploy AppImage tool exited with a non-zero status while building the AppDir into an AppImage. The CLI captures and reports linuxdeploy's stdout/stderr along with the exit code to explain the packaging failure.
Source
Thrown at packages/cli/src/bundler/linux.rs:89
let output = Command::new(linuxdeploy)
.arg("--appdir")
.arg(&appdir)
.arg("--output")
.arg("appimage")
.env("OUTPUT", &appimage_path)
// Run the linuxdeploy AppImage in extract-and-run mode to avoid host
// runtime/FUSE differences on distros and CI runners.
.env("APPIMAGE_EXTRACT_AND_RUN", "1")
.env("NO_STRIP", "true")
.current_dir(&output_dir)
.output()
.await
.with_context(|| format!("Failed to run linuxdeploy: {}", linuxdeploy.display()))?;
if !output.status.success() {
let stdout = String::from_utf8_lossy(&output.stdout);
let stderr = String::from_utf8_lossy(&output.stderr);
bail!(
"linuxdeploy failed with exit code {:?}\nstdout:\n{}\nstderr:\n{}",
output.status.code(),
stdout.trim(),
stderr.trim()
);
}
if !appimage_path.exists() {
let found = find_appimage_output(&output_dir, &name)?;
if let Some(found_path) = found {
if found_path != appimage_path {
fs::rename(&found_path, &appimage_path).with_context(|| {
format!(
"Failed to rename {} to {}",
found_path.display(),
appimage_path.display()
)
})?;View on GitHub (pinned to 24f6a829df)
Solutions
- linuxdeploy failed. Read the printed stdout and stderr and install the missing dependencies it reports.
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at packages/cli/src/bundler/linux.rs:89 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/59c99ff2aeefaac5.
Report an issue: GitHub.