From 6b3cdf3e3d4417caa8f9d622561696a8d50c86aa Mon Sep 17 00:00:00 2001 From: fxqnlr Date: Fri, 1 Nov 2024 22:22:18 +0100 Subject: add basic apt compatability --- src/packages.rs | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/packages.rs') diff --git a/src/packages.rs b/src/packages.rs index 8efc928..3ff997d 100644 --- a/src/packages.rs +++ b/src/packages.rs @@ -1,5 +1,6 @@ use std::{fs::File, io::Read}; +use apt::Apt; use dnf::Dnf; use pacman::Pacman; use portage::Portage; @@ -7,6 +8,7 @@ use serde::{Deserialize, Serialize}; use crate::error::{Error, Result}; +mod apt; mod dnf; mod pacman; mod portage; @@ -34,6 +36,7 @@ pub struct Package { #[derive(Debug, Clone, clap::ValueEnum, Serialize, Deserialize)] pub enum Manager { + Apt, Dnf, Pacman, Portage, @@ -65,6 +68,7 @@ impl Manager { fn from_str(value: &str) -> Result { Ok(match value { + "debian" | "ubuntu" |"linuxmint" => Self::Apt, "fedora" => Self::Dnf, "arch" => Self::Pacman, "gentoo" => Self::Portage, @@ -74,6 +78,7 @@ impl Manager { pub fn to_package_manager(&self) -> Box { match self { + Self::Apt => Box::new(Apt), Self::Dnf => Box::new(Dnf), Self::Pacman => Box::new(Pacman), Self::Portage => Box::new(Portage), -- cgit v1.2.3