Summary
The shared tauri-dev-desktop image worked well for Emoji Nook, but this review surfaced a few small gaps that would make it a stronger all-in-one Tauri desktop development image.
Recommendations
- Add
cargo-nextest: The repo's shared Rust validation path uses pnpm test:rust, which shells out to cargo-nextest. Having it in the image would keep local container validation aligned with the documented workflow and CI-style commands.
- Keep standard Rust QA tooling preinstalled: Ensure
clippy and the usual rustfmt/toolchain pieces are always present so full Rust validation can run without extra setup.
- Improve cache persistence for short-lived
docker run sessions: Cold-ish crate downloads were the main friction point when using the image as an ephemeral build environment. Anything that helps preserve Cargo and pnpm caches between runs would noticeably improve iteration speed.
- Include X11 desktop inspection tools:
xprop, wmctrl, xdotool, and xev were very helpful for debugging Cinnamon/X11 window activation behaviour from the host side. Keeping those available in the image would make Linux desktop integration work much easier to diagnose.
- Include
gh: GitHub CLI support inside the image would make PR, issue, and check inspection easier when working fully from the container.
- Include
jq: Small utility, but very handy for Tauri config inspection, GitHub CLI output, and other JSON-heavy workflows.
- Ensure fast search tools are available:
ripgrep is the big one; fd is a nice extra for fast file discovery.
Why this came up
This came out of Emoji Nook work that used the dev container for Rust/Tauri builds while running the app on the host for Cinnamon/X11 behaviour testing. That split worked well overall, and these additions would mostly reduce the last bits of friction.
Summary
The shared
tauri-dev-desktopimage worked well for Emoji Nook, but this review surfaced a few small gaps that would make it a stronger all-in-one Tauri desktop development image.Recommendations
cargo-nextest: The repo's shared Rust validation path usespnpm test:rust, which shells out tocargo-nextest. Having it in the image would keep local container validation aligned with the documented workflow and CI-style commands.clippyand the usualrustfmt/toolchain pieces are always present so full Rust validation can run without extra setup.docker runsessions: Cold-ish crate downloads were the main friction point when using the image as an ephemeral build environment. Anything that helps preserve Cargo and pnpm caches between runs would noticeably improve iteration speed.xprop,wmctrl,xdotool, andxevwere very helpful for debugging Cinnamon/X11 window activation behaviour from the host side. Keeping those available in the image would make Linux desktop integration work much easier to diagnose.gh: GitHub CLI support inside the image would make PR, issue, and check inspection easier when working fully from the container.jq: Small utility, but very handy for Tauri config inspection, GitHub CLI output, and other JSON-heavy workflows.ripgrepis the big one;fdis a nice extra for fast file discovery.Why this came up
This came out of Emoji Nook work that used the dev container for Rust/Tauri builds while running the app on the host for Cinnamon/X11 behaviour testing. That split worked well overall, and these additions would mostly reduce the last bits of friction.