diff --git a/source/ubl-settings-kernel.c b/source/ubl-settings-kernel.c index 47b5f92..29d9fde 100644 --- a/source/ubl-settings-kernel.c +++ b/source/ubl-settings-kernel.c @@ -161,6 +161,9 @@ void on_config_custom_load(GtkWidget *,main_window *widgets){ } char *yon_package_dependent_get(char *target){ + int command_check = 0; + command_check = system(check_pactree_exist_command); + if (command_check) return target; int size=0; config_str parsed = NULL; if (strstr(target,",")){ @@ -904,7 +907,7 @@ void on_module_remove_clicked(GtkWidget *self,dictionary *dict){ } int size; config_str additions = yon_resource_open_file(kernels_addon_path,&size); - // GtkTreeIter iter; + GtkTreeIter itar; for (int i=0;imodule_requirements_size;i++){ if (!system(get_package_is_installed_command(tab->module_requirements[i]))){ for (int j=1;jliststore1,&itar); gtk_list_store_set(window->liststore1,&itar,0,1,1,depends,2, parsed[3],-1); + } else { + gtk_list_store_append(window->liststore1,&itar); + gtk_list_store_set(window->liststore1,&itar,0,1,1,target,2, parsed[3],-1); + } } yon_char_parsed_free(parsed,cur_size); @@ -998,6 +1004,10 @@ void on_package_remove_clicked(GtkWidget *self,dictionary *dict){ gtk_list_store_append(window->liststore1,&itar); gtk_list_store_set(window->liststore1,&itar,0,1,1,depends,2, parsed[3],-1); + } else { + gtk_list_store_append(window->liststore1,&itar); + gtk_list_store_set(window->liststore1,&itar,0,1,1,target,2, parsed[3],-1); + } } yon_char_parsed_free(parsed,cur_size); diff --git a/source/ubl-settings-kernel.h b/source/ubl-settings-kernel.h index c4c786c..db47b93 100644 --- a/source/ubl-settings-kernel.h +++ b/source/ubl-settings-kernel.h @@ -47,16 +47,14 @@ #define get_package_info_command(target) yon_char_append("pacman -Si ",target) #define get_package_is_installed_command(target) yon_char_append("pacman -Qq ",target) #define get_package_is_updated_command(target) yon_char_append("pacman -Qqu ",target) -#define unload_command(target) yon_char_append("ubmunload ",target) #define pacman_update_command "pacman -Sy" #define install_command(target) yon_char_append("pacman -Sy --noconfirm ",target) #define remove_command(target) yon_char_append("pacman -R --noconfirm ",target) #define get_dependent_command(target) yon_char_append("pactree -rl ",target) +#define check_pactree_exist_command "which pactree > /dev/null 2>&1" #define get_active_kernel_command "cat /usr/lib/modules/$(uname -r)/pkgbase" -#define get_installed_kernel_packages_command "cat /usr/lib/modules/*/pkgbase" -#define get_installed_kernel_modules_command "cat /memory/data/from/0/ublinux-data/module/*linux*" #define build_command(target,filename,debug_bool,drivers_bool) yon_char_unite("ubmkuird -l ",!yon_char_is_empty(filename)?"-n ":"",filename," -k ",target, " ",(debug_bool)?"--addon ":"",(drivers_bool)?"-H":"",NULL)