Skip to content

Commit ae6e7af

Browse files
crianvnepogodin
andauthored
pages: use new gaming meta package (#97)
* pages: use new gaming meta package * pages: use new gaming packages * pages: add check for gaming packages * Apply suggestions from code review Co-authored-by: Vladislav Nepogodin <nepogodin.vlad@gmail.com> * Apply suggestions from code review * pages: correction --------- Co-authored-by: Vladislav Nepogodin <nepogodin.vlad@gmail.com>
1 parent 0cad8ee commit ae6e7af

File tree

1 file changed

+12
-5
lines changed

1 file changed

+12
-5
lines changed

src/pages.rs

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -375,18 +375,25 @@ fn create_fixes_section(builder: &Builder) -> gtk::Box {
375375
let dialog_tx_gaming = dialog_tx_gaming.clone();
376376
// Spawn child process in separate thread.
377377
std::thread::spawn(move || {
378-
const alpm_package_name: &str = "cachyos-gaming-meta";
379-
if !utils::is_alpm_pkg_installed(alpm_package_name) {
380-
let _ = utils::run_cmd_terminal(format!("pacman -S {alpm_package_name}"), true);
381-
} else {
378+
const ALPM_PACKAGE_NAMES: [&str; 2] = ["cachyos-gaming-meta", "cachyos-gaming-applications"];
379+
let mut packages_to_install = Vec::new();
380+
for alpm_package_name in ALPM_PACKAGE_NAMES {
381+
if !utils::is_alpm_pkg_installed(alpm_package_name) {
382+
packages_to_install.push(alpm_package_name);
383+
}
384+
}
385+
if packages_to_install.is_empty() {
382386
dialog_tx_gaming
383387
.send(DialogMessage {
384388
msg: fl!("gaming-package-installed"),
385389
msg_type: gtk::MessageType::Info,
386390
action: Action::InstallGaming,
387391
})
388392
.expect("Couldn't send data to channel");
389-
}
393+
} else {
394+
let packages = packages_to_install.join(" ");
395+
let _ = utils::run_cmd_terminal(format!("pacman -S {packages}"), true);
396+
}
390397
});
391398
});
392399
install_snapper_btn.connect_clicked(move |_| {

0 commit comments

Comments
 (0)