Expand description
End-to-end installation workflow for winbrew install.
This module owns the full package installation pipeline once a package reference has been handed off by the CLI layer. The workflow is intentionally split into small submodules so each phase has a clear responsibility:
statemanages database transitions and rejects conflicting installs.downloadbuilds the network client and downloads the installer payload.flowcoordinates the download, engine execution, and rollback paths.planbuilds read-only install previews for the CLI.typesnormalizes lower-level failures into user-facing install errors.
The public entry point is run. It resolves the package reference against
the catalog, selects the installer, creates a temporary workspace, streams
download progress through InstallObserver, and either commits the final
install record or rolls back all partial state on failure.
Checksum handling is strict by default. Legacy algorithms such as MD5 and
SHA-1 are rejected unless the caller explicitly opts into
ignore_checksum_security. When that flag is enabled, the accepted legacy
algorithms are still returned in InstallOutcome so the caller can report
what was tolerated during verification.
Re-exportsยง
pub use types::InstallError;
Modulesยง
- cancel
- Cancellation support for long-running CLI and workflow operations.
- download
- Download and verification helpers for installer payloads.
- flow
- Orchestration helpers for the middle and final phases of installation.
- plan
- sevenz ๐
- state
- Database and filesystem state helpers for installation.
- types
- Error normalization and installer-selection helpers for installation.
Structsยง
- Catalog
Package - A validated catalog package entry.
- Install
Outcome - Full outcome of an install attempt.
- Install
Phase ๐Guard - Install
Result - The successful result of an install flow.
- Resolved
Install ๐Target - Temp
Root ๐Guard
Enumsยง
- Install
Failure Class - Failure buckets used by install orchestration and user-facing errors.
- Package
Ref - A package reference provided by callers or CLI commands.
Traitsยง
- Install
Observer - Interactive hooks used by the installation pipeline.
Functionsยง
- ensure_
install_ ๐dirs - resolve_
install_ ๐target - run
- Execute the full install workflow for a resolved package reference.
- write_
install_ ๐journal