|
|
|
@ -978,21 +978,45 @@ void yon_monitor_view_update(){
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void *yon_proprietary_local_get(main_window *widgets){
|
|
|
|
gboolean yon_proprietary_clear(main_window *widgets){
|
|
|
|
gtk_list_store_clear(main_config.list);
|
|
|
|
gtk_list_store_clear(main_config.list);
|
|
|
|
gtk_list_store_clear(main_config.list2);
|
|
|
|
gtk_list_store_clear(main_config.list2);
|
|
|
|
gtk_combo_box_text_remove_all(GTK_COMBO_BOX_TEXT(widgets->KernelsCombo));
|
|
|
|
gtk_combo_box_text_remove_all(GTK_COMBO_BOX_TEXT(widgets->KernelsCombo));
|
|
|
|
gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(widgets->KernelsCombo),ALL_INSTALLED_KERNELS_LABEL);
|
|
|
|
gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(widgets->KernelsCombo),ALL_INSTALLED_KERNELS_LABEL);
|
|
|
|
gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->KernelsCombo),0);
|
|
|
|
gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->KernelsCombo),0);
|
|
|
|
|
|
|
|
return G_SOURCE_REMOVE;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
gboolean yon_proprietary_append(struct proprietary_struct *target){
|
|
|
|
|
|
|
|
GtkTreeIter iter;
|
|
|
|
|
|
|
|
gtk_list_store_append(main_config.list,&iter);
|
|
|
|
|
|
|
|
gtk_list_store_set(main_config.list,&iter,0,target->module_status,1,target->package_status,2,target->drivers[0],3,target->drivers[3],4,_(target->drivers[4]),5,_(target->drivers[5]),7,target->drivers[1],8,target->drivers[2],9,!yon_char_is_empty(target->drivers[1]),10,!yon_char_is_empty(target->drivers[2]),-1);
|
|
|
|
|
|
|
|
free(target);
|
|
|
|
|
|
|
|
return G_SOURCE_REMOVE;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
gboolean yon_proprietary_append_kernels(struct proprietary_kernel_append_struct *append){
|
|
|
|
|
|
|
|
gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(append->widgets->KernelsCombo),append->kernel);
|
|
|
|
|
|
|
|
free(append->kernel);
|
|
|
|
|
|
|
|
return G_SOURCE_REMOVE;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void *yon_proprietary_local_get(main_window *widgets){
|
|
|
|
|
|
|
|
gtk_widget_set_sensitive(widgets->LoadDriversButton,0);
|
|
|
|
|
|
|
|
g_idle_add((GSourceFunc)yon_proprietary_clear,widgets);
|
|
|
|
int kernels_size;
|
|
|
|
int kernels_size;
|
|
|
|
config_str kernels_installed=yon_config_load(yon_debug_output("%s\n",yon_get_kernels_installed),&kernels_size);
|
|
|
|
config_str kernels_installed=yon_config_load(yon_debug_output("%s\n",yon_get_kernels_installed),&kernels_size);
|
|
|
|
if (!kernels_size){
|
|
|
|
if (!kernels_size){
|
|
|
|
yon_ubl_status_box_render(KERNELS_SUPPORTED_UNFOUND_LABEL,BACKGROUND_IMAGE_FAIL_TYPE);
|
|
|
|
yon_ubl_status_box_render_thread(KERNELS_SUPPORTED_UNFOUND_LABEL,BACKGROUND_IMAGE_FAIL_TYPE);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
for (int i=0;i<kernels_size;i++){
|
|
|
|
for (int i=0;i<kernels_size;i++){
|
|
|
|
yon_char_remove_last_symbol(kernels_installed[i],'\n');
|
|
|
|
yon_char_remove_last_symbol(kernels_installed[i],'\n');
|
|
|
|
gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(widgets->KernelsCombo),kernels_installed[i]);
|
|
|
|
struct proprietary_kernel_append_struct *cur = malloc(sizeof(struct proprietary_kernel_append_struct));
|
|
|
|
|
|
|
|
cur->widgets=widgets;
|
|
|
|
|
|
|
|
cur->kernel=yon_char_new(kernels_installed[i]);
|
|
|
|
|
|
|
|
g_idle_add((GSourceFunc)yon_proprietary_append_kernels,cur);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
int size;
|
|
|
|
int size;
|
|
|
|
@ -1005,20 +1029,24 @@ void *yon_proprietary_local_get(main_window *widgets){
|
|
|
|
for (int dr_desc=1;dr_desc<size;dr_desc++){
|
|
|
|
for (int dr_desc=1;dr_desc<size;dr_desc++){
|
|
|
|
int current_size;
|
|
|
|
int current_size;
|
|
|
|
config_str current = yon_char_parse(rtn[dr_desc],¤t_size,";");
|
|
|
|
config_str current = yon_char_parse(rtn[dr_desc],¤t_size,";");
|
|
|
|
GtkTreeIter iter;
|
|
|
|
|
|
|
|
if ((!strcmp(current[0],"")||yon_char_parsed_check_exist(kernels_installed,kernels_size,current[0])>-1)){
|
|
|
|
if ((!strcmp(current[0],"")||yon_char_parsed_check_exist(kernels_installed,kernels_size,current[0])>-1)){
|
|
|
|
if ((!yon_char_is_empty(current[1])&&!system(yon_get_is_exist_command(yon_debug_output("%s\n\n\n",current[1]))))||(!yon_char_is_empty(current[2])&&!system(yon_get_is_exist_command(yon_debug_output("%s\n\n\n",current[2]))))){
|
|
|
|
if ((!yon_char_is_empty(current[1])&&!system(yon_get_is_exist_command(yon_debug_output("%s\n\n\n",current[1]))))||(!yon_char_is_empty(current[2])&&!system(yon_get_is_exist_command(yon_debug_output("%s\n\n\n",current[2]))))){
|
|
|
|
int module_status = !yon_char_is_empty(current[1])?!system(yon_get_is_installed_command(current[1])):0;
|
|
|
|
int module_status = !yon_char_is_empty(current[1])?!system(yon_get_is_installed_command(current[1])):0;
|
|
|
|
int package_status = !yon_char_is_empty(current[2])?!system(yon_get_is_installed_command(current[2])):0;
|
|
|
|
int package_status = !yon_char_is_empty(current[2])?!system(yon_get_is_installed_command(current[2])):0;
|
|
|
|
gtk_list_store_append(main_config.list,&iter);
|
|
|
|
struct proprietary_struct *cur = malloc(sizeof(struct proprietary_struct));
|
|
|
|
gtk_list_store_set(main_config.list,&iter,0,module_status,1,package_status,2,current[0],3,current[3],4,_(current[4]),5,_(current[5]),7,current[1],8,current[2],9,!yon_char_is_empty(current[1]),10,!yon_char_is_empty(current[2]),-1);
|
|
|
|
cur->drivers=current;
|
|
|
|
|
|
|
|
cur->drivers_size=current_size;
|
|
|
|
|
|
|
|
cur->module_status=module_status;
|
|
|
|
|
|
|
|
cur->package_status=package_status;
|
|
|
|
|
|
|
|
g_idle_add((GSourceFunc)yon_proprietary_append,cur);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
char *status_text = yon_char_unite(yon_char_get_localised_from_lib(SUCCESS_LABEL),". ", !getuid()? main_config.load_mode==1?yon_char_get_localised_from_lib(LOCAL_LOAD_SUCCESS_LABEL):yon_char_get_localised_from_lib(GLOBAL_LOAD_SUCCESS_LABEL):yon_char_get_localised_from_lib(ROOT_WARNING_LABEL),NULL);
|
|
|
|
char *status_text = yon_char_unite(yon_char_get_localised_from_lib(SUCCESS_LABEL),". ", !getuid()? main_config.load_mode==1?yon_char_get_localised_from_lib(LOCAL_LOAD_SUCCESS_LABEL):yon_char_get_localised_from_lib(GLOBAL_LOAD_SUCCESS_LABEL):yon_char_get_localised_from_lib(ROOT_WARNING_LABEL),NULL);
|
|
|
|
yon_ubl_status_box_render(status_text,!getuid()?BACKGROUND_IMAGE_SUCCESS_TYPE:BACKGROUND_IMAGE_FAIL_TYPE);
|
|
|
|
yon_ubl_status_box_render_thread(status_text,!getuid()?BACKGROUND_IMAGE_SUCCESS_TYPE:BACKGROUND_IMAGE_FAIL_TYPE);
|
|
|
|
free(status_text);
|
|
|
|
free(status_text);
|
|
|
|
gtk_tree_view_set_model(GTK_TREE_VIEW(widgets->DriversTree),GTK_TREE_MODEL(main_config.list));
|
|
|
|
gtk_tree_view_set_model(GTK_TREE_VIEW(widgets->DriversTree),GTK_TREE_MODEL(main_config.list));
|
|
|
|
|
|
|
|
gtk_widget_set_sensitive(widgets->LoadDriversButton,1);
|
|
|
|
g_thread_exit (NULL);
|
|
|
|
g_thread_exit (NULL);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|