mix ex_ratatui.gen.burrito (ExRatatui v0.13.0)

Copy Markdown View Source

Patches the current project to ship as a single-file native binary via Burrito.

Adds {:burrito, "~> 1.6"}, merges a release with the four standard targets (linux, macos, macos_silicon, windows) into releases: without disturbing existing entries, creates a CLI module delegating to ExRatatui.Burrito.start_link/3, adds a .mise.toml pinning zig 0.16.0, and — when --ci github is passed — drops a release workflow into .github/workflows/.

The generated CLI only boots the TUI inside the wrapped binary (Burrito.Util.running_standalone?/0), so the consumer's mix test and iex -S mix are unaffected, and it stops the VM with a non-zero exit code when the TUI crashes or the terminal cannot initialize.

See guides/packaging/packaging_with_burrito.md for the end-to-end story this task automates.

Example

mix ex_ratatui.gen.burrito --tui-module MyTui.TUI
mix ex_ratatui.gen.burrito --tui-module MyTui.TUI --ci github

Options

  • --tui-module (required) — the module that use ExRatatui.App. The generated CLI calls that_module.start_link/1 and monitors it.
  • --cinone (default) or github. With github, drops .github/workflows/release.yml that builds and publishes binaries on tag push.