tauri-apps/tauri · error · Error::GenericError
permission file not found, please build your application…
Error message
permission file not found, please build your application once first
What it means
`tauri permission ls` reads the ACL manifest snapshot at `src-tauri/gen/schemas/acl-manifests.json`, which the Tauri build script generates when the app compiles. If that file does not exist, the CLI has no permission data to list and tells you to build once first.
Solutions
- Run `tauri dev` or `tauri build` once so the build script emits `gen/schemas/acl-manifests.json`, then rerun `tauri permission ls`
- If a build was already done, verify `src-tauri/gen/schemas/acl-manifests.json` exists and you are running the command from the project root/src-tauri so paths resolve
- In CI, add a compile step (e.g. `cargo build` in src-tauri) before any `tauri permission ls` step
Defensive patterns
Strategy: validation
Validate before calling
# ensure the generated ACL manifest exists before listing permissions MANIFEST=src-tauri/gen/schemas/acl-manifests.json [ -f "$MANIFEST" ] || cargo tauri build --debug >/dev/null # or `tauri dev` once tauri permission ls
Prevention
- Compile once (`tauri dev` or `tauri build`) in onboarding steps before permission inspection
- Do not gitignore-then-delete `src-tauri/gen/` if your workflow lists permissions; treat it as build output to regenerate, not preserve
- In CI, run a cargo build step before `tauri permission ls`
When it happens
Trigger: Running `tauri permission ls` in a freshly cloned or freshly scaffolded project that has never been compiled with `tauri dev`/`tauri build`; or after deleting/ignoring the `gen/schemas` output directory.
Common situations: New contributors cloning a repo where `src-tauri/gen` is gitignored (it is generated output); inspecting permissions before the first build; CI pipelines that try to audit permissions without a prior compile step.
Related errors
- invalid permission
- Permission already exists at
- Could not find a capability to update
- Couldn't find capabilities directory at
- failed to generate plugin documentation page
AI-assisted analysis of tauri-apps/tauri@52e4b6e71d (2026-08-20).
Data as JSON: /api/errors/3c042ecb5b231ac5.
Report an issue: GitHub.
Appendix: source
Thrown at crates/tauri-cli/src/acl/permission/ls.rs:156
.deny
.iter()
.map(|c| c.red().to_string())
.collect::<Vec<_>>()
.join(", ")
)
},
));
}
}
if !permissions.is_empty() {
println!("{}\n", permissions.join("\n\n"));
}
}
Ok(())
} else {
crate::error::bail!("permission file not found, please build your application once first")
}
}
View on GitHub (pinned to 52e4b6e71d)