ralph_workflow/platform/mod.rs
1//! Platform detection and installation guidance
2//!
3//! Provides OS-specific suggestions for installing missing dependencies.
4
5mod binary_guidance;
6mod detection;
7mod known_binaries;
8
9pub use binary_guidance::InstallGuidance;
10
11/// Detected platform type
12///
13/// This enum is `pub(crate)` because it is only used internally by the
14/// `InstallGuidance` functionality. External code should use `InstallGuidance`
15/// which handles platform detection automatically.
16#[derive(Debug, Clone, Copy, PartialEq, Eq)]
17pub enum Platform {
18 /// macOS with Homebrew available
19 MacWithBrew,
20 /// macOS without Homebrew
21 MacWithoutBrew,
22 /// Debian/Ubuntu Linux (apt-based)
23 DebianLinux,
24 /// RHEL/Fedora Linux (dnf-based)
25 RhelLinux,
26 /// Arch Linux (pacman-based)
27 ArchLinux,
28 /// Generic Linux (unknown package manager)
29 GenericLinux,
30 /// Windows
31 Windows,
32 /// Unknown platform
33 Unknown,
34}