Expand description
Shared installer infrastructure modules.
These modules provide common functionality used by all component installers:
- package management: unified interface for apt/dnf/pacman
- distro detection: thin facade over
platform::detection - package mappings: per-distro package name resolution
- managed Python packages: exact, resolver-free central ownership
- guard: structured error handling, logging, progress, Python validation
- utils: color-aware output, command existence, print helpers
- env_validation:
.mlstack_envchecking with sensible defaults - rocm_env: thin facade over
platform::linuxfor ROCm paths/versions - ui_helper: CLI arg parsing, path validation, git helpers
§Validation Assertions
- VAL-INFRA-001: Module structure compiles and integrates
- VAL-INFRA-019: No code duplication with platform modules
Re-exports§
pub use benchmark_common::format_elapsed;pub use benchmark_common::is_dry_run;pub use benchmark_common::normalize_pci_bus_id;pub use benchmark_common::now_timestamp;pub use benchmark_common::resolve_log_dir;pub use benchmark_common::BenchLogger;pub use benchmark_common::BenchTimer;pub use benchmark_common::BenchmarkResult;pub use benchmark_common::BenchmarkResults;pub use distro::DistroFacade;pub use env_validation::EnvValidationResult;pub use env_validation::EnvVars;pub use guard::detect_python_version;pub use guard::is_python_supported;pub use guard::is_python_supported_for_rocm_torch;pub use guard::log_error;pub use guard::log_info;pub use guard::log_warn;pub use guard::InstallerError;pub use guard::LogLevel;pub use guard::ProgressTracker;pub use guard::PythonVersion;pub use guard::MAX_ROCM_TORCH_PYTHON;pub use guard::MIN_PYTHON_VERSION;pub use managed_python_build_tools::managed_python_install_command;pub use managed_python_build_tools::managed_python_verify_command;pub use managed_python_build_tools::ManagedPythonCommand;pub use managed_python_build_tools::MANAGED_PYTHON_PACKAGES;pub use nvidia_blocklist::contaminated_packages;pub use nvidia_blocklist::filter_requirements;pub use nvidia_blocklist::filter_requirements_file;pub use nvidia_blocklist::is_cuda_nvidia_package;pub use nvidia_blocklist::is_cuda_wheel_url;pub use package_manager::DryRunResult;pub use package_manager::PackageManagerFacade;pub use package_manager::PackageOperation;pub use package_mappings::map_package_name;pub use rocm_env::RocmEnv;pub use sealed_token::SealedToken;pub use telemetry::submit_build_report;pub use telemetry::BuildReport;pub use telemetry::BuildReportArtifacts;pub use telemetry::BuildReportStatus;pub use ui_helper::is_system_path;pub use ui_helper::UiArgError;pub use ui_helper::UiArgs;pub use utils::command_exists;pub use utils::fix_pip_cache_ownership;pub use utils::get_colors;pub use utils::Colors;pub use utils::PipCacheFixResult;pub use utils::PythonPkgManager;
Modules§
- askpass
SUDO_ASKPASShelper for non-interactive privileged operations.- benchmark_
common - Benchmark common utilities — PCI bus ID normalization, timing, result structs with JSON serialization, and timestamped logging.
- distro
- Thin facade over
platform::detectionfor installer use. - env_
validation - Environment validation —
.mlstack_envchecking with sensible defaults. - guard
- Installer guard — structured error handling, logging, progress reporting, and Python version validation.
- managed_
python_ build_ tools - Rusty-owned Python tooling and import-time dependencies.
- nvidia_
blocklist - NVIDIA/CUDA exclusion — the SINGLE source of truth for the hard prime requirement that NO NVIDIA/CUDA dependency is ever installed.
- package_
manager - Package manager abstraction for install/remove/query operations.
- package_
mappings - Per-distro package name mappings.
- rocm_
env - ROCm environment facade — thin wrapper over
platform::linuxfor ROCm paths/versions. - sealed_
token - telemetry
- ui_
helper - UI installer helper — CLI arg parsing, path validation.
- utils
- Common utility functions — color-aware output, command existence checks, print helpers.