From b524840bc95835c12e7050fc75950509502ea813 Mon Sep 17 00:00:00 2001 From: steven-omaha <35634100+steven-omaha@users.noreply.github.com> Date: Tue, 28 Feb 2023 12:58:24 +0100 Subject: [PATCH] add option to disable backends --- crates/pacdef_core/src/config.rs | 3 +++ crates/pacdef_core/src/core.rs | 20 ++++++++++++++++---- 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/crates/pacdef_core/src/config.rs b/crates/pacdef_core/src/config.rs index c1bcfe6..d31b314 100644 --- a/crates/pacdef_core/src/config.rs +++ b/crates/pacdef_core/src/config.rs @@ -14,6 +14,8 @@ pub struct Config { pub aur_rm_args: Option>, /// Warn the user when a group is not a symlink. pub warn_not_symlinks: bool, + /// Backends the user does not want to use even though the binary exists. + pub disabled_backends: Vec, } impl Config { @@ -65,6 +67,7 @@ impl Default for Config { aur_helper: "paru".into(), aur_rm_args: None, warn_not_symlinks: true, + disabled_backends: vec![], } } } diff --git a/crates/pacdef_core/src/core.rs b/crates/pacdef_core/src/core.rs index 890628f..a71243c 100644 --- a/crates/pacdef_core/src/core.rs +++ b/crates/pacdef_core/src/core.rs @@ -95,9 +95,15 @@ impl Pacdef { let mut to_install = ToDoPerBackend::new(); for mut backend in Backends::iter() { - #[cfg(feature = "arch")] - self.overwrite_values_from_config(&mut *backend); + if self + .config + .disabled_backends + .contains(&backend.get_section().to_string()) + { + continue; + } + self.overwrite_values_from_config(&mut *backend); backend.load(&self.groups); match backend.get_missing_packages_sorted() { @@ -172,9 +178,15 @@ impl Pacdef { let mut result = ToDoPerBackend::new(); for mut backend in Backends::iter() { - #[cfg(feature = "arch")] - self.overwrite_values_from_config(&mut *backend); + if self + .config + .disabled_backends + .contains(&backend.get_section().to_string()) + { + continue; + } + self.overwrite_values_from_config(&mut *backend); backend.load(&self.groups); match backend.get_unmanaged_packages_sorted() {