Expand description
Distro Downloader Module
Provides a TUI for browsing, downloading, and managing Linux distribution ISOs. Downloads are stored using chunked FAT32 storage (bypassing 4GB limit). Integrates ISO management for viewing, deleting, and booting downloaded ISOs.
§Architecture
┌─────────────────────────────────────────────────────────────┐
│ DistroDownloader │
├─────────────────────────────────────────────────────────────┤
│ ┌─────────────┐ ┌──────────────┐ ┌───────────────────┐ │
│ │ Catalog │ │ State │ │ IsoStorage │ │
│ │ (static) │ │ (UI + DL) │ │ (chunked) │ │
│ └─────────────┘ └──────────────┘ └───────────────────┘ │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ UI Event Loop (Browse / Manage / Download) │ │
│ └─────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────┘Re-exports§
pub use catalog::get_by_category;pub use catalog::DistroCategory;pub use catalog::DistroEntry;pub use catalog::CATEGORIES;pub use catalog::DISTRO_CATALOG;pub use commit_download::commit_to_download;pub use commit_download::CommitResult;pub use commit_download::DownloadCommitConfig;pub use manifest_io::delete_manifest;pub use manifest_io::load_manifests_from_esp;pub use manifest_io::persist_manifest;pub use manifest_io::ManifestIoError;pub use state::DownloadState;pub use state::DownloadStatus;pub use state::UiMode;pub use state::UiState;pub use ui::DistroDownloader;pub use ui::ManageAction;
Modules§
- Distribution Catalog
- Download commit flow - transitions from UEFI to bare-metal for ISO download.
- Manifest I/O operations
- Network connectivity verification for distro downloader
- Distro Downloader Renderer
- State management for Distro Downloader
- Distro Downloader UI