|
|
|
|
@ -199,12 +199,7 @@ char *yon_package_dependent_get(char *target){
|
|
|
|
|
config_str recurs = NULL;
|
|
|
|
|
for (int i=0;i<size;i++){
|
|
|
|
|
yon_char_remove_last_symbol(parsed[i],'\n');
|
|
|
|
|
if (strcmp(parsed[i],target)){
|
|
|
|
|
yon_char_parsed_add_or_create_if_exists(recurs,&recurs_size,yon_package_dependent_get(parsed[i]));
|
|
|
|
|
} else {
|
|
|
|
|
yon_char_parsed_add_or_create_if_exists(recurs,&recurs_size,parsed[i]);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
yon_char_parsed_add_or_create_if_exists(recurs,&recurs_size,parsed[i]);
|
|
|
|
|
}
|
|
|
|
|
if (recurs_size){
|
|
|
|
|
yon_char_parsed_free(parsed,size);
|
|
|
|
|
@ -563,23 +558,7 @@ gboolean on_command_execute_success(GtkWidget *,gint status,main_window *widgets
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
// gtk_button_set_label(GTK_BUTTON(widgets->MoreButton),MORE_LABEL);
|
|
|
|
|
|
|
|
|
|
// int pos = gtk_paned_get_position(GTK_PANED(widgets->TerminalPaned));
|
|
|
|
|
// yon_window_config_add_instant_parameter("paned_pos","settings",&pos,YON_TYPE_INT);
|
|
|
|
|
|
|
|
|
|
// GValue val = G_VALUE_INIT;
|
|
|
|
|
// g_object_get_property(G_OBJECT(widgets->TerminalPaned),"max-position",&val);
|
|
|
|
|
// gtk_paned_set_position(GTK_PANED(widgets->TerminalPaned),g_value_get_int(&val));
|
|
|
|
|
// g_value_unset(&val);
|
|
|
|
|
|
|
|
|
|
// g_object_ref(widgets->MainNotebook);
|
|
|
|
|
// gtk_container_remove(GTK_CONTAINER(widgets->TerminalPaned),widgets->MainNotebook);
|
|
|
|
|
// gtk_box_pack_start(GTK_BOX(gtk_widget_get_parent(widgets->TerminalPaned)),widgets->MainNotebook,1,1,0);
|
|
|
|
|
|
|
|
|
|
// gtk_box_reorder_child(GTK_BOX(gtk_widget_get_parent(widgets->MainNotebook)),widgets->MainNotebook,0);
|
|
|
|
|
if (!status)
|
|
|
|
|
// on_terminal_revealer_open(NULL,widgets);
|
|
|
|
|
gtk_button_clicked(GTK_BUTTON(widgets->MoreButton));
|
|
|
|
|
}
|
|
|
|
|
yon_packages_update();
|
|
|
|
|
@ -835,6 +814,7 @@ void on_module_install_clicked(GtkWidget *self,dictionary *dict){
|
|
|
|
|
kernels_tab *tab = yon_dictionary_get_data(dict->first->next,kernels_tab*);
|
|
|
|
|
char *action_text = NULL;
|
|
|
|
|
dialog_window *window = yon_dialog_window_new();
|
|
|
|
|
gtk_window_set_transient_for(GTK_WINDOW(window->Window),GTK_WINDOW(widgets->Window));
|
|
|
|
|
g_signal_connect(G_OBJECT(window->AcceptButton),"clicked",G_CALLBACK(on_module_install_accept),dict);
|
|
|
|
|
|
|
|
|
|
if (self == tab->update_module_button){
|
|
|
|
|
@ -896,6 +876,7 @@ void on_package_install_clicked(GtkWidget *self,dictionary *dict){
|
|
|
|
|
kernels_tab *tab = yon_dictionary_get_data(dict->first->next,kernels_tab*);
|
|
|
|
|
char *action_text = NULL;
|
|
|
|
|
dialog_window *window = yon_dialog_window_new();
|
|
|
|
|
gtk_window_set_transient_for(GTK_WINDOW(window->Window),GTK_WINDOW(widgets->Window));
|
|
|
|
|
g_signal_connect(G_OBJECT(window->AcceptButton),"clicked",G_CALLBACK(on_package_install_accept),dict);
|
|
|
|
|
gtk_tree_view_column_set_title(GTK_TREE_VIEW_COLUMN(gtk_tree_view_get_column(GTK_TREE_VIEW(window->DependencesTree),1)),PACKAGE_TAB_LABEL);
|
|
|
|
|
if (self == tab->update_package_button){
|
|
|
|
|
@ -999,6 +980,7 @@ void on_module_remove_clicked(GtkWidget *self,dictionary *dict){
|
|
|
|
|
}
|
|
|
|
|
char *action_text = NULL;
|
|
|
|
|
dialog_window *window = yon_dialog_window_new();
|
|
|
|
|
gtk_window_set_transient_for(GTK_WINDOW(window->Window),GTK_WINDOW(widgets->Window));
|
|
|
|
|
if (dict->first->next->next){
|
|
|
|
|
dict=dict->first;
|
|
|
|
|
free(dict->first->next->next);
|
|
|
|
|
@ -1036,7 +1018,7 @@ void on_module_remove_clicked(GtkWidget *self,dictionary *dict){
|
|
|
|
|
free(final);
|
|
|
|
|
}
|
|
|
|
|
for (int i=0;i<tab->module_requirements_size;i++){
|
|
|
|
|
if (!system(get_package_is_installed_command(tab->module_requirements[i]))){
|
|
|
|
|
if (yon_packages_check_installed(tab->module_requirements[i])){
|
|
|
|
|
for (int j=1;j<size;j++){
|
|
|
|
|
int cur_size;
|
|
|
|
|
config_str parsed = yon_char_parse(additions[j],&cur_size,";");
|
|
|
|
|
@ -1091,6 +1073,7 @@ void on_package_remove_clicked(GtkWidget *self,dictionary *dict){
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
dialog_window *window = yon_dialog_window_new();
|
|
|
|
|
gtk_window_set_transient_for(GTK_WINDOW(window->Window),GTK_WINDOW(widgets->Window));
|
|
|
|
|
gtk_tree_view_column_set_title(GTK_TREE_VIEW_COLUMN(gtk_tree_view_get_column(GTK_TREE_VIEW(window->DependencesTree),1)),PACKAGE_TAB_LABEL);
|
|
|
|
|
if (dict->first->next->next){
|
|
|
|
|
dict=dict->first;
|
|
|
|
|
@ -1122,7 +1105,7 @@ void on_package_remove_clicked(GtkWidget *self,dictionary *dict){
|
|
|
|
|
GtkTreeIter itar;
|
|
|
|
|
char *target_depends = yon_package_dependent_get(tab->package);
|
|
|
|
|
if (target_depends&&strcmp(target_depends,tab->package)){
|
|
|
|
|
free(yon_char_divide_search(target_depends," ",-1));
|
|
|
|
|
// free(yon_char_divide_search(target_depends," ",-1));
|
|
|
|
|
char *final = yon_char_replace(target_depends," ","\n");
|
|
|
|
|
gtk_list_store_append(window->liststore1,&itar);
|
|
|
|
|
gtk_list_store_set(window->liststore1,&itar,0,1,1,final,-1);
|
|
|
|
|
@ -1130,13 +1113,14 @@ void on_package_remove_clicked(GtkWidget *self,dictionary *dict){
|
|
|
|
|
}
|
|
|
|
|
config_str additions = yon_resource_open_file(kernels_addon_path,&size);
|
|
|
|
|
for (int i=0;i<tab->module_requirements_size;i++){
|
|
|
|
|
if (!system(get_package_is_installed_command(tab->package_requirements[i]))){
|
|
|
|
|
if (yon_packages_check_installed(tab->module_requirements[i])){
|
|
|
|
|
for (int j=1;j<size;j++){
|
|
|
|
|
int cur_size;
|
|
|
|
|
config_str parsed = yon_char_parse(additions[j],&cur_size,";");
|
|
|
|
|
if (!strcmp(parsed[1],tab->module_requirements[i])){
|
|
|
|
|
char *target = parsed[2];
|
|
|
|
|
char *depends = yon_package_dependent_get(target);
|
|
|
|
|
if (yon_char_is_empty(depends)) continue;
|
|
|
|
|
if (strcmp(depends,target)){
|
|
|
|
|
gtk_list_store_append(window->liststore1,&itar);
|
|
|
|
|
gtk_list_store_set(window->liststore1,&itar,0,1,1,depends,2, parsed[3],-1);
|
|
|
|
|
|