docs: accurate Linux/macOS/Windows build prerequisites and updated verification status

Windows section now gives real, actionable steps (MSVC toolchain via rustup,
VS Build Tools with the Desktop development with C++ workload, WebView2 note,
NSIS auto-download note) instead of a one-line mention. Also corrects the
stale verification paragraph: test count (199, not 160) and confirms the
production build now launches and runs correctly outside dev mode on both
macOS and Linux (Windows remains the one unverified platform).
This commit is contained in:
Renamr Scaffold
2026-08-30 06:13:22 +00:00
parent 8118a53e35
commit 56f57545ac
+33 -11
View File
@@ -321,9 +321,25 @@ scripts/gen_icons.py Regenerates src-tauri/icons/ from the real logo mark
## Building
Prerequisites: Rust (stable) + Cargo, Node.js 18+, and Tauri's platform prerequisites
(see https://v2.tauri.app/start/prerequisites/ — on Linux this means
`libwebkit2gtk-4.1-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev` and a C
toolchain; macOS/Windows need Xcode / the VS Build Tools + WebView2 respectively).
(see https://v2.tauri.app/start/prerequisites/ for the full, up-to-date list).
**Linux:** `libwebkit2gtk-4.1-dev libgtk-3-dev libayatana-appindicator3-dev
librsvg2-dev` plus a C toolchain (`build-essential` on Debian/Ubuntu). Bundling the
installers additionally needs `patchelf` (for the `.deb`/`.rpm`) — `npm run tauri build`
will also download a few small `linuxdeploy` helper tools from GitHub the first time it
builds an `.AppImage`, so a network connection is needed for that step.
**macOS:** Xcode (or at least the Xcode Command Line Tools — `xcode-select --install`).
No other system packages are needed.
**Windows:** Rust via [rustup](https://rustup.rs/), using the default MSVC toolchain
(not the GNU one). [Visual Studio Build Tools](https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio)
(or full Visual Studio) with the **"Desktop development with C++"** workload, which
provides the linker Rust's MSVC toolchain needs. The **WebView2 Runtime** — this is
already preinstalled on any up-to-date Windows 10/11 machine, so you usually don't need
to do anything; if you hit a WebView2-related error, grab the Evergreen bootstrapper from
Microsoft. You do **not** need to separately install NSIS or WiX — Tauri's bundler
downloads NSIS automatically the first time it builds the `.exe` installer.
```sh
# Rust core (no UI deps needed):
@@ -337,14 +353,20 @@ npm run tauri dev
npm run tauri build
```
Verified in the environment this was built in: `cargo test --workspace` (all 160
passing, including the TMDB, TVmaze, OMDb, and OpenSubtitles client tests — those run
against a local mock HTTP server via `mockito`, no live network or API key needed to
build/test), `cargo
check -p aurora-curator` (compiles clean against real Tauri + GTK/WebKit system
libraries), and `npm run build` (TypeScript type-checks, Vite bundles). The actual GUI
window has **not** been visually verified anywhere yet — that sandbox has no display.
Run `npm run tauri dev` on your machine to see and click through it for the first time.
`npm run tauri build` produces a native installer for whichever OS you run it on — there
is no cross-compilation; build on Windows to get a `.exe`/`.msi`, on Linux for
`.deb`/`.rpm`/`.AppImage`, on macOS for a `.app`/`.dmg`.
Verified so far: `cargo test --workspace` (199 tests passing, including the TMDB,
TVmaze, OMDb, and OpenSubtitles client tests — those run against a local mock HTTP
server via `mockito`, no live network or API key needed to build/test), `cargo check -p
aurora-curator` (compiles clean against real Tauri + GTK/WebKit system libraries), and
`npm run build` (TypeScript type-checks, Vite bundles). The production build
(`npm run tauri build`) has been run end-to-end and the resulting app **launches and
runs correctly outside of dev mode** on both macOS (`.app`, confirmed by hand) and Linux
(`.deb`/`.rpm`/`.AppImage`, built and smoke-tested in a real Ubuntu environment). Windows
is the one platform not yet built/verified — if you hit anything building there, please
open an issue.
### Setting up metadata sources (for "Fetch Data")