makeover-build 0.2.0

Build-script support for the make-family design system: materialise makeover's themes and makeover-webview's stylesheet into a Tauri app's frontend, once, instead of copying the same twenty lines into every consumer's build.rs.
Documentation
# makeover-build

Build-script support for the make-family design system.

Every consumer materialises the same generated files from a `build.rs`, and
until now every consumer wrote that code itself. GoingsOn and Balanced Breakfast
grew byte-identical copies of the theme materialiser during the makeover-geometry
adoption, and the layout stylesheet would have been the third and fourth copies.
This is that code, once.

```rust
// build.rs
fn main() {
    makeover_build::tauri_frontend(env!("CARGO_MANIFEST_DIR"), &makeover_build::Emit::default());
    tauri_build::build();
}
```

That writes `themes/` beside the manifest and `frontend/css/layout.css` under
it, which is where both Tauri apps already look. Consumers wanting different
paths call `themes` and `layout_css` directly.

## What is deliberately not here

The geometry emitter. GoingsOn scopes the touch preset to a `ui-mode-mobile`
class set by a bootstrap script, Balanced Breakfast hangs it off
`@media (hover: none)`, and audiofiles has no switch at all. Extracting it would
mean picking one of those policies by accident, inside a shared crate, without
anyone deciding. Density selection is unowned and has its own task; the geometry
half lands after it.

Taking the identical half now and leaving the contested half alone is the point.
A helper crate should record agreement, not manufacture it.

## Why these files are generated

Tauri's resource globs are read by its CLI against the crate directory, so they
cannot point into a registry checkout or `OUT_DIR`. Materialising into the crate
keeps the source crate authoritative without vendoring a second copy that
drifts. Every path written here is expected to be gitignored.

`themes` clears stale `.toml` files before writing, so a theme removed or
renamed upstream does not linger in the bundle from an earlier build. That is
the detail that makes this worth sharing rather than retyping: it is easy to
omit, and its absence shows up as a theme that will not go away.

## Status

Unpublished, path deps on `makeover` and `makeover-webview`. Consumers are
GoingsOn and Balanced Breakfast.

## Licence

MIT.