fn get_distro_kind()

in src/prepare_chroot.rs [32:79]


fn get_distro_kind(distro: &distro::Distro) -> distro::DistroKind {
    match distro.distro_name_version.name.as_str() {
        s if s.contains("Ubuntu") => distro::DistroKind {
            distro_type: distro::DistroType::Ubuntu,
            distro_subtype: distro::DistroSubType::None,
        },
        s if s.contains("Debian") => distro::DistroKind {
            distro_type: distro::DistroType::Debian,
            distro_subtype: distro::DistroSubType::None,
        },
        s if s.contains("Red Hat") => distro::DistroKind {
            distro_type: distro::DistroType::RedHat,
            distro_subtype: distro::DistroSubType::None,
        },
        s if s.contains("Oracle Linux") => distro::DistroKind {
            distro_type: distro::DistroType::RedHat,
            distro_subtype: distro::DistroSubType::OracleLinux,
        },
        s if s.contains("SLES") => distro::DistroKind {
            distro_type: distro::DistroType::Suse,
            distro_subtype: distro::DistroSubType::None,
        },
        s if s.contains("Azure Linux") => distro::DistroKind {
            distro_type: distro::DistroType::AzureLinux,
            distro_subtype: distro::DistroSubType::None,
        },
        s if s.contains("Linux Mariner") => distro::DistroKind {
            distro_type: distro::DistroType::AzureLinux,
            distro_subtype: distro::DistroSubType::None,
        },
        s if s.contains("AlmaLinux") => distro::DistroKind {
            distro_type: distro::DistroType::RedHat,
            distro_subtype: distro::DistroSubType::AlmaLinux,
        },
        s if s.contains("Rocky Linux") => distro::DistroKind {
            distro_type: distro::DistroType::RedHat,
            distro_subtype: distro::DistroSubType::RockyLinux,
        },
        s if s.contains("CentOS") => distro::DistroKind {
            distro_type: distro::DistroType::RedHat,
            distro_subtype: distro::DistroSubType::CentOS,
        },
        _ => distro::DistroKind {
            distro_type: distro::DistroType::Undefined,
            distro_subtype: distro::DistroSubType::None,
        },
    }
}