diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c
index a00a755..13a59c1 100644
--- a/source/ubinstall-gtk.c
+++ b/source/ubinstall-gtk.c
@@ -846,6 +846,7 @@ void config_init(){
     main_config.progress_thread=0;
     main_config.install_complete=0;
     main_config.save_done=0;
+    main_config.save_configured=0;
     main_config.configure_mode=0;
     main_config.load_mode=-1;
     main_config.log_progress_buzy=0;
@@ -943,12 +944,12 @@ void *on_config_save(void *data){
     main_window *widgets = (main_window*)data;
 
         int size=0;
-        config_str parameters = yon_config_get_selection_by_key(&size,
+        config_str parameters = yon_config_get_selection_by_key_no_ignored(&size,
         AUTOINSTALL_TYPE_INSTALL,
         AUTOINSTALL_DEVICE,
         device_format_parameter,
         device_label_parameter,
-        main_config.install_mode!=1||main_config.install_mode!=2?NULL:part_parameter,
+        main_config.install_mode!=1&&main_config.install_mode!=2?NULL:part_parameter,
         part_type_parameter,
         device_format_parameter,
         main_config.install_mode!=1?NULL:part_size_parameter,
@@ -978,7 +979,7 @@ void *on_config_save(void *data){
         g_mutex_lock(&main_config.install_mutex);
         main_config.install_complete=1;
         g_mutex_unlock(&main_config.install_mutex);
-            if (!main_config.save_done){
+            if (!main_config.save_done&&main_config.save_configured){
                 on_setup_system_configuration(widgets);
             }
     return 0;
@@ -1112,7 +1113,6 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){
 
         } break;
         case YON_PAGE_COMPLETION:{
-            yon_debug_output("%s\n","Enter completion");
             yon_switch_page_render(widgets,7);
             gtk_widget_set_sensitive(widgets->BackButton,0);
             gtk_widget_hide(gtk_widget_get_parent(widgets->PackageInstallationProgress));
@@ -1120,19 +1120,18 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){
             gtk_widget_hide(widgets->PackageInstallationLabel);
             gtk_widget_set_sensitive(widgets->NextButton,1);
             gtk_widget_set_sensitive(widgets->CancelInstallButton,1);
-            yon_debug_output("%s\n","Done widgets");
             g_mutex_lock(&main_config.install_mutex);
             main_config.install_complete=0;
             g_mutex_unlock(&main_config.install_mutex);
             main_config.save_done=0;
-            yon_debug_output("%s\n","Done variables");
             textdomain(LocaleName);
             gtk_button_set_label(GTK_BUTTON(widgets->NextButton),RESTART_LABEL);
             gtk_button_set_label(GTK_BUTTON(widgets->CancelInstallButton),EXIT_LABEL);
             gtk_image_set_from_icon_name(GTK_IMAGE(gtk_button_get_image(GTK_BUTTON(widgets->NextButton))),
             "com.ublinux.ubinstall-gtk.sync-symbolic",GTK_ICON_SIZE_BUTTON);
-            yon_debug_output("%s\n","Done labels and button icon");
             }
+            gtk_widget_hide(gtk_widget_get_parent(widgets->InstallationProgress));
+            gtk_widget_hide(gtk_widget_get_parent(widgets->PackageInstallationProgress));
             break;
 
             case YON_PAGE_COMPLETED:{
@@ -1194,20 +1193,20 @@ void *on_setup_system_configuration(void * data){
     main_window *widgets = (main_window*)data;
     if (widgets){};
     int size;
-    config_str all_parameters = yon_char_parsed_new(&size,
-    config(user_name_parameter),
-    config(user_gecos_parameter),
-    config(user_password_parameter),
-    config(root_password_parameter),
-    config(autologin_parameter),
-    config(xkbmodel_parameter),
-    config(xkblayout_parameter),
-    config(xkbvariant_parameter),
-    config(xkboptions_parameter),
-    config(hostname_parameter),
-    config(zone_parameter),
-    config(lang_parameter),
-    config(locale_parameter),
+    config_str all_parameters = yon_config_get_selection_by_key(&size,
+    user_name_parameter,
+    user_gecos_parameter,
+    user_password_parameter,
+    root_password_parameter,
+    autologin_parameter,
+    xkbmodel_parameter,
+    xkblayout_parameter,
+    xkbvariant_parameter,
+    xkboptions_parameter,
+    hostname_parameter,
+    zone_parameter,
+    lang_parameter,
+    locale_parameter,
     NULL);
     if (all_parameters){
         char *parameter_string = yon_char_parsed_to_string(all_parameters,size," ");
@@ -1309,29 +1308,29 @@ void yon_install_options_save(GtkWidget *device_tree, GtkWidget *part_tree,char
 void yon_install_options_save(GtkWidget *device_tree, GtkWidget *part_tree,char *mode,main_window *widgets){
     GtkTreeIter iter,itar;
     GtkTreeModel *model,*model2;
-    if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(device_tree)),&model,&iter)){
-        if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(part_tree)),&model2,&itar)){
-            char *cur_device, *cur_section;
-            gtk_tree_model_get(model,&iter,0,&cur_device,-1);
-            gtk_tree_model_get(model2,&itar,0,&cur_section,-1);
-            yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device);
-            yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,mode);
-            yon_config_register(part_parameter,part_parameter_command,cur_section);
-
-            if(cur_section) free(cur_section); 
-            if(cur_device) free(cur_device); 
-            if (!main_config.configure_mode)
-                gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN);
-            else 
-                gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION);
-        } else {
-            yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
-            yon_ubl_status_highlight_incorrect(part_tree);
-        }
-    } else {
+    if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(device_tree)),&model,&iter)){
+        yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
+        yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(device_tree));
+        return;
+    }
+    if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(part_tree)),&model2,&itar)){
         yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
-        yon_ubl_status_highlight_incorrect(device_tree);
+        yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(part_tree));
+        return;
     }
+    char *cur_device, *cur_section;
+    gtk_tree_model_get(model,&iter,0,&cur_device,-1);
+    gtk_tree_model_get(model2,&itar,0,&cur_section,-1);
+    yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device);
+    yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,mode);
+    yon_config_register(part_parameter,part_parameter_command,cur_section);
+
+    if(cur_section) free(cur_section); 
+    if(cur_device) free(cur_device); 
+    if (!main_config.configure_mode)
+        gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN);
+    else 
+        gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION);
 }
 
 void on_page_navigation_clicked(GtkWidget *self, main_window *widgets);
@@ -1742,6 +1741,7 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){
                             gtk_widget_set_sensitive(widgets->CancelInstallButton,0);
                             gtk_widget_set_sensitive(widgets->NextButton,0);
                             gtk_widget_set_sensitive(widgets->BackButton,0);
+                            main_config.save_configured=1;
                         }
                     } else {
                         gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_CONFIGURE_END);
@@ -1763,7 +1763,7 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){
                 } break;
 
                 case YON_PAGE_INSTALL_ERROR:
-                case YON_PAGE_COMPLETION:
+                case YON_PAGE_COMPLETION:{
                     confirmation_window *window = yon_confirmation_window_new();
                     dictionary *dict = NULL;
                     yon_dictionary_add_or_create_if_exists_with_data(dict,"widgets",widgets);
@@ -1775,6 +1775,7 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){
                     gtk_label_set_text(GTK_LABEL(window->TextLabel),WARNING_REBOOT_TEXT_LABEL);
                     gtk_label_set_text(GTK_LABEL(window->TitleLabel),WARNING_TITLE_LABEL);
                     gtk_widget_show(window->Window);
+                }
                 break;
 
                 case YON_PAGE_INSTALL_OPTIONS: {
@@ -1807,44 +1808,66 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){
                 case YON_PAGE_OPTIONS_GRUB_INSTALL:{
                     GtkTreeIter iter;
                     GtkTreeModel *model;
-                    if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubInstallDevicesTree)),&model,&iter)){
-                        char *cur_device;
-                        gtk_tree_model_get(model,&iter,0,&cur_device,-1);
-                        yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device);
-                        yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_install");
-                        yon_config_remove_by_key(part_parameter);
-                        if (!main_config.configure_mode)
-                            gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN);
-                        else
-                            gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION);
-                    } else {
+                    if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubInstallDevicesTree)),&model,&iter)){
+                        yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
+                        yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->GrubInstallDevicesTree));
+                        return;
+                    }
+                    char *cur_device;
+                    gtk_tree_model_get(model,&iter,0,&cur_device,-1);
+                    if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubInstallPartitionTree)),&model,&iter)){
                         yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
-                        yon_ubl_status_highlight_incorrect(widgets->GrubInstallDevicesTree);
+                        yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->GrubInstallPartitionTree));
+                        return;
                     }
+                    char *partition;
+                    gtk_tree_model_get(model,&iter,0,&partition,-1);
+                    yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device);
+                    yon_config_register(part_parameter,part_parameter_command,partition);
+                    yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_install");
+                    yon_config_remove_by_key(part_parameter);
+                    if (!main_config.configure_mode)
+                        gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN);
+                    else
+                        gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_CONFIGURE_END);
+                    
                 } break;
 
                 case YON_PAGE_OPTIONS_GRUB_UPDATE:{
                     GtkTreeIter iter;
                     GtkTreeModel *model;
-                    if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubUpdateDevicesTree)),&model,&iter)){
-                        char *cur_device;
-                        gtk_tree_model_get(model,&iter,0,&cur_device,-1);
-                        yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device);
-                        yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_update");
-                        yon_config_remove_by_key(part_parameter);
+                    if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubUpdateDevicesTree)),&model,&iter)){
+                        yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
+                        yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->GrubUpdateDevicesTree));
+                        return;
+                    }
+                    char *cur_device;
+                    gtk_tree_model_get(model,&iter,0,&cur_device,-1);
+                    if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubUpdatePartitionTree)),&model,&iter)){
+                        yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
+                        yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->GrubUpdatePartitionTree));
+                        return;
+                    }
+                    char *partition;
+                    gtk_tree_model_get(model,&iter,0,&partition,-1);
+                    yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device);
+                    yon_config_register(part_parameter,part_parameter_command,partition);
+                    yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_update");
+                    yon_config_remove_by_key(part_parameter);
                     if (!main_config.configure_mode)
                         gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN);
                     else
-                        gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION);
-                    } else {
-                        yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
-                        yon_ubl_status_highlight_incorrect(widgets->GrubUpdateDevicesTree);
-                    }
-                    }break;
+                        gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_CONFIGURE_END);
+                }break;
 
                 case YON_PAGE_OPTIONS_SEPARATE:{
                     GtkTreeModel *model;
                     GtkTreeIter iter;
+                    if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateDevicesTree)),&model,&iter)){
+                        yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
+                        yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->SeparateDevicesTree));
+                        return;
+                    }
                     if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateSysSectionTree)),&model,&iter)){
                         yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
                         yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->SeparateSysSectionTree));
@@ -1856,32 +1879,42 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){
                 case YON_PAGE_OPTIONS_SEPARATE_USRDATA:{
                     GtkTreeIter iter,itar;
                     GtkTreeModel *model,*model2;
-                    if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateDevicesTree)),&model,&iter)){
-                        if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateSysSectionTree)),&model2,&itar)){
-                            char *cur_device, *system_section, *user_section;
-                            gtk_tree_model_get(model,&iter,0,&cur_device,-1);
-                            gtk_tree_model_get(model2,&itar,0,&system_section,-1);
-                            if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateUserSysSectionTree)),&model2,&itar)){
-                                gtk_tree_model_get(model2,&itar,0,&user_section,-1);
-                                yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device);
-                                yon_config_register(part_parameter,part_parameter_command,yon_char_unite(system_section,",",user_section,NULL));
-                                yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"custom");
-                                gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN);
-                                return;
-                            } else {
-
-                            }
-                        } else {
-
-                        }
-                    } else {
-
+                    if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->OSSysSectionTree)),&model,&iter)){
+                        yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
+                        yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->OSSysSectionTree));
+                        gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_OS_ONLY);
+                        return;
+                    }
+                    if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateUserDevicesTree)),&model2,&itar)){
+                        yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
+                        yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->SeparateUserDevicesTree));
+                        return;
                     }
+                    if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateUserSysSectionTree)),&model2,&itar)){
+                        yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
+                        yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->SeparateUserSysSectionTree));
+                        return;
+                    }
+                    char *cur_device, *system_section, *user_section;
+                    gtk_tree_model_get(model,&iter,0,&cur_device,-1);
+                    gtk_tree_model_get(model2,&itar,0,&system_section,-1);
+                
+                    gtk_tree_model_get(model2,&itar,0,&user_section,-1);
+                    yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device);
+                    char *installation_parts = yon_char_unite(system_section,",",user_section,NULL);
+                    yon_config_register(part_parameter,part_parameter_command,installation_parts);
+                    free(installation_parts);
+                    yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"custom");
+                    if (!main_config.configure_mode)
+                        gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN);
+                    else
+                        gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION);
                     
                 } break;
 
                 case YON_PAGE_OPTIONS_OS_ONLY:{
                     yon_install_options_save(widgets->OSDevicesTree,widgets->OSSysSectionTree,"system_only",widgets);
+                    gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_CONFIGURE_END);
                 } break;
 
                 case YON_PAGE_OPTIONS_USRDATA_ONLY:{
@@ -1921,7 +1954,15 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){
                 break; 
 
                 case YON_PAGE_CONFIGURE_END:{
-                    gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_USERS);
+                    if (main_config.install_mode==3&&(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->GrubInstallRadio))||gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->GrubUpdateRadio))||gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->OSRadio)))){
+                        gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALL_OPTIONS);
+                        gtk_widget_set_sensitive(widgets->BackButton,1);
+                        gtk_widget_set_sensitive(widgets->NextButton,1);
+                        gtk_widget_set_sensitive(widgets->CancelInstallButton,1);
+
+                    } else { //||||gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->UserDataOnlyRadio))
+                        gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_USERS);
+                    }
                 } break;
                 
                 case YON_PAGE_COMPLETED:{
@@ -1935,10 +1976,9 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){
 
         } break;
         case -2: { // Cancel/repeat
-            switch (page){
+            switch (page){  
                 case YON_PAGE_COMPLETION:
                 case YON_PAGE_INSTALL_ERROR:{
-                    // GtkWidget *dialog = gtk_dialog_new();
                     gtk_main_quit();
                     }break;
                 default:{
@@ -1982,7 +2022,9 @@ void yon_set_max_size_from_partition(GtkTreeView *table, GtkSpinButton *spin_siz
     GtkTreeIter iter;
     char *selected_size=NULL;
     if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(table),&model,&iter)){
-        gtk_tree_model_get(model,&iter,1,&selected_size,-1);
+        gtk_tree_model_get(model,&iter,2,&selected_size,-1);
+        if (yon_char_is_empty(selected_size))
+            gtk_tree_model_get(model,&iter,1,&selected_size,-1);
         if (!yon_char_is_empty(selected_size)){
             int size = gtk_combo_box_get_active(size_type);
             double cur_size = atof(selected_size);
@@ -2386,9 +2428,11 @@ main_window *yon_main_window_complete(){
 
     widgets->GpartedGrubInstallButton = yon_gtk_builder_get_widget(builder,"GpartedGrubInstallButton");
     widgets->GrubInstallDevicesTree = yon_gtk_builder_get_widget(builder,"GrubInstallDevicesTree");
+    widgets->GrubInstallPartitionTree = yon_gtk_builder_get_widget(builder,"GrubInstallPartitionTree");
 
     widgets->GpartedGrubUpdateButton = yon_gtk_builder_get_widget(builder,"GpartedGrubUpdateButton");
     widgets->GrubUpdateDevicesTree = yon_gtk_builder_get_widget(builder,"GrubUpdateDevicesTree");
+    widgets->GrubUpdatePartitionTree = yon_gtk_builder_get_widget(builder,"GrubUpdatePartitionTree");
 
     widgets->GpartedSeparateButton = yon_gtk_builder_get_widget(builder,"GpartedSeparateButton");
     widgets->SeparateDevicesTree = yon_gtk_builder_get_widget(builder,"SeparateDevicesTree");
@@ -2477,6 +2521,8 @@ main_window *yon_main_window_complete(){
     g_signal_connect(G_OBJECT(widgets->AddButton),"clicked",G_CALLBACK(on_keyboard_clicked),widgets);
     g_signal_connect(G_OBJECT(widgets->RemoveButton),"clicked",G_CALLBACK(on_keyboard_removed),widgets);
 
+    g_signal_connect(G_OBJECT(widgets->GrubInstallDevicesTree),"cursor-changed",G_CALLBACK(on_separate_installation_changed),widgets);
+    g_signal_connect(G_OBJECT(widgets->GrubUpdateDevicesTree),"cursor-changed",G_CALLBACK(on_separate_installation_changed),widgets);
     g_signal_connect(G_OBJECT(widgets->InstallationNearSysDevicesTree),"cursor-changed",G_CALLBACK(on_near_installation_device_changed),widgets);
     g_signal_connect(G_OBJECT(widgets->SamePlaceDeviceTree),"cursor-changed",G_CALLBACK(on_near_installation_device_changed),widgets);
     g_signal_connect(G_OBJECT(widgets->UserdataDevicesTree),"cursor-changed",G_CALLBACK(on_near_installation_device_changed),widgets);
diff --git a/source/ubinstall-gtk.h b/source/ubinstall-gtk.h
index 67706dd..6deb980 100755
--- a/source/ubinstall-gtk.h
+++ b/source/ubinstall-gtk.h
@@ -76,8 +76,13 @@ NULL
 #define get_parts_and_devices_command "lsblk --noheadings -Jo TYPE,PATH,SIZE,FSTYPE,LABEL,PARTLABEL,MOUNTPOINT,FSUSED,FSUSE% --exclude 7,253"
 
 #define AUTOINSTALL_TYPE_INSTALL "AUTOINSTALL[install_type]"
+#define AUTOINSTALL_TYPE_INSTALL_command "ubconfig --source global get [autoinstall] AUTOINSTALL[install_type]"
+
 #define AUTOINSTALL_DEVICE "AUTOINSTALL[device]"
+#define AUTOINSTALL_DEVICE_command "ubconfig --source global get [autoinstall] AUTOINSTALL[device]"
+
 #define part_parameter "AUTOINSTALL[part]"
+#define part_parameter_command "ubconfig --source global get [autoinstall] AUTOINSTALL[part]"
 
 #define user_name_parameter "AUTOINSTALL[user_name]"
 #define user_name_parameter_command "ubconfig --source global get [autoinstall] AUTOINSTALL[user_name]"
@@ -121,9 +126,6 @@ NULL
 
 #define open_gparted_command "gparted"
 
-#define AUTOINSTALL_TYPE_INSTALL_command "ubconfig --source global get [autoinstall] AUTOINSTALL[install_type]"
-#define AUTOINSTALL_DEVICE_command "ubconfig --source global get [autoinstall] AUTOINSTALL[device]"
-#define part_parameter_command "ubconfig --source global get [autoinstall] AUTOINSTALL[part]"
 
 #define PASSWORD_DEFAULT "ublinux"
 
@@ -196,6 +198,7 @@ typedef struct {
 	int password_min_length;
 
 	int save_done;
+	int save_configured;
 	int load_mode;
  
 	int install_complete;
@@ -334,9 +337,11 @@ typedef struct {
 
 	GtkWidget *GpartedGrubInstallButton;
 	GtkWidget *GrubInstallDevicesTree;
+	GtkWidget *GrubInstallPartitionTree;
 
 	GtkWidget *GpartedGrubUpdateButton;
 	GtkWidget *GrubUpdateDevicesTree;
+	GtkWidget *GrubUpdatePartitionTree;
 
 	GtkWidget *GpartedSeparateButton;
 	GtkWidget *SeparateDevicesTree;
diff --git a/ubinstall-gtk.glade b/ubinstall-gtk.glade
index d0ed9eb..033b9a1 100644
--- a/ubinstall-gtk.glade
+++ b/ubinstall-gtk.glade
@@ -71,6 +71,13 @@
       
     
   
+  
   
                                               
                                                 False
@@ -4387,7 +4392,6 @@ installed.
                           
                             True
                             True
-                            in
                             
                               
                                 True
@@ -4425,7 +4429,6 @@ installed.
                                                 True
                                                 False
                                                 vertical
-                                                5
                                                 
                                                   
                                                     True
@@ -4473,8 +4476,9 @@ installed.
                                           
                                             True
                                             False
-                                            Attention! The selected OS UBLinux components will be installed
+                                            <b>Attention!</b> The selected OS UBLinux components will be installed
 separately into the selected partition.
+                                            True
                                             0
                                           
                                           
@@ -5157,6 +5161,110 @@ separately into the selected partition.
                                             0
                                           
                                         
+                                        
+                                          
+                                            True
+                                            False
+                                            vertical
+                                            
+                                              
+                                                True
+                                                False
+                                                Choose a section:
+                                                0
+                                              
+                                              
+                                                False
+                                                True
+                                                0
+                                              
+                                            
+                                            
+                                              
+                                                True
+                                                True
+                                                in
+                                                128
+                                                
+                                                  
+                                                    True
+                                                    True
+                                                    PartitionsList
+                                                    0
+                                                    
+                                                      
+                                                    
+                                                    
+                                                      
+                                                        Section
+                                                        
+                                                          
+                                                          
+                                                            0
+                                                          
+                                                        
+                                                      
+                                                    
+                                                    
+                                                      
+                                                        Capacity
+                                                        
+                                                          
+                                                          
+                                                            1
+                                                          
+                                                        
+                                                      
+                                                    
+                                                    
+                                                      
+                                                        Free space
+                                                        
+                                                          
+                                                          
+                                                            2
+                                                          
+                                                        
+                                                      
+                                                    
+                                                    
+                                                      
+                                                        File system
+                                                        
+                                                          
+                                                          
+                                                            3
+                                                          
+                                                        
+                                                      
+                                                    
+                                                    
+                                                      
+                                                        Mark
+                                                        
+                                                          
+                                                          
+                                                            4
+                                                          
+                                                        
+                                                      
+                                                    
+                                                  
+                                                
+                                              
+                                              
+                                                False
+                                                True
+                                                1
+                                              
+                                            
+                                          
+                                          
+                                            False
+                                            True
+                                            1
+                                          
+                                        
                                       
                                     
                                   
@@ -5428,6 +5536,110 @@ separately into the selected partition.
                                         0
                                       
                                     
+                                    
+                                      
+                                        True
+                                        False
+                                        vertical
+                                        
+                                          
+                                            True
+                                            False
+                                            Choose a section:
+                                            0
+                                          
+                                          
+                                            False
+                                            True
+                                            0
+                                          
+                                        
+                                        
+                                          
+                                            True
+                                            True
+                                            in
+                                            128
+                                            
+                                              
+                                                True
+                                                True
+                                                PartitionsList
+                                                0
+                                                
+                                                  
+                                                
+                                                
+                                                  
+                                                    Section
+                                                    
+                                                      
+                                                      
+                                                        0
+                                                      
+                                                    
+                                                  
+                                                
+                                                
+                                                  
+                                                    Capacity
+                                                    
+                                                      
+                                                      
+                                                        1
+                                                      
+                                                    
+                                                  
+                                                
+                                                
+                                                  
+                                                    Free space
+                                                    
+                                                      
+                                                      
+                                                        2
+                                                      
+                                                    
+                                                  
+                                                
+                                                
+                                                  
+                                                    File system
+                                                    
+                                                      
+                                                      
+                                                        3
+                                                      
+                                                    
+                                                  
+                                                
+                                                
+                                                  
+                                                    Mark
+                                                    
+                                                      
+                                                      
+                                                        4
+                                                      
+                                                    
+                                                  
+                                                
+                                              
+                                            
+                                          
+                                          
+                                            False
+                                            True
+                                            1
+                                          
+                                        
+                                      
+                                      
+                                        False
+                                        True
+                                        1
+                                      
+