Added dependances check

pull/51/head
parent e26355b2cf
commit 107fbe0860

@ -161,6 +161,9 @@ void on_config_custom_load(GtkWidget *,main_window *widgets){
} }
char *yon_package_dependent_get(char *target){ 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; int size=0;
config_str parsed = NULL; config_str parsed = NULL;
if (strstr(target,",")){ if (strstr(target,",")){
@ -904,7 +907,7 @@ void on_module_remove_clicked(GtkWidget *self,dictionary *dict){
} }
int size; int size;
config_str additions = yon_resource_open_file(kernels_addon_path,&size); config_str additions = yon_resource_open_file(kernels_addon_path,&size);
// GtkTreeIter iter; GtkTreeIter itar;
for (int i=0;i<tab->module_requirements_size;i++){ for (int i=0;i<tab->module_requirements_size;i++){
if (!system(get_package_is_installed_command(tab->module_requirements[i]))){ if (!system(get_package_is_installed_command(tab->module_requirements[i]))){
for (int j=1;j<size;j++){ for (int j=1;j<size;j++){
@ -914,10 +917,13 @@ void on_module_remove_clicked(GtkWidget *self,dictionary *dict){
char *target = yon_char_unite(parsed[1],",",parsed[2],NULL); char *target = yon_char_unite(parsed[1],",",parsed[2],NULL);
char *depends = yon_package_dependent_get(target); char *depends = yon_package_dependent_get(target);
if (strcmp(depends,target)){ if (strcmp(depends,target)){
GtkTreeIter itar;
gtk_list_store_append(window->liststore1,&itar); gtk_list_store_append(window->liststore1,&itar);
gtk_list_store_set(window->liststore1,&itar,0,1,1,depends,2, parsed[3],-1); 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); 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_append(window->liststore1,&itar);
gtk_list_store_set(window->liststore1,&itar,0,1,1,depends,2, parsed[3],-1); 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); yon_char_parsed_free(parsed,cur_size);

@ -47,16 +47,14 @@
#define get_package_info_command(target) yon_char_append("pacman -Si ",target) #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_installed_command(target) yon_char_append("pacman -Qq ",target)
#define get_package_is_updated_command(target) yon_char_append("pacman -Qqu ",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 pacman_update_command "pacman -Sy"
#define install_command(target) yon_char_append("pacman -Sy --noconfirm ",target) #define install_command(target) yon_char_append("pacman -Sy --noconfirm ",target)
#define remove_command(target) yon_char_append("pacman -R --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 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_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) #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)

Loading…
Cancel
Save