diff --git a/locale/ubinstall-gtk.pot b/locale/ubinstall-gtk.pot index ed05804..5271fb7 100644 --- a/locale/ubinstall-gtk.pot +++ b/locale/ubinstall-gtk.pot @@ -945,10 +945,6 @@ msgstr "" msgid "Kernel" msgstr "" -#: source/ubl-strings.h:274 -msgid "Kernel addons" -msgstr "" - #: source/ubl-strings.h:275 msgid "Installing Modules" msgstr "" @@ -1018,7 +1014,7 @@ msgid "Select your language:" msgstr "" #: source/ubl-strings.h:293 -msgid "Selecting additional system kernel components" +msgid "Additional kernel components" msgstr "" #: source/ubl-strings.h:294 diff --git a/locale/ubinstall-gtk_ru.po b/locale/ubinstall-gtk_ru.po index 47afa9a..4e4e49a 100644 --- a/locale/ubinstall-gtk_ru.po +++ b/locale/ubinstall-gtk_ru.po @@ -965,10 +965,6 @@ msgstr "Установка программ по группам" msgid "Kernel" msgstr "Ядро" -#: source/ubl-strings.h:274 -msgid "Kernel addons" -msgstr "Дополнительные компоненты ядра" - #: source/ubl-strings.h:275 msgid "Installing Modules" msgstr "Установка модулей" @@ -991,7 +987,7 @@ msgstr "Загрузчик" #: source/ubl-strings.h:281 msgid "Network" -msgstr "Настройка сетевых интерфейсов" +msgstr "Сеть" #: source/ubl-strings.h:282 msgid "Enable VNC server" @@ -1038,8 +1034,8 @@ msgid "Select your language:" msgstr "Выберите язык:" #: source/ubl-strings.h:293 -msgid "Selecting additional system kernel components" -msgstr "Выбор дополнительных компонентов ядра системы" +msgid "Additional kernel components" +msgstr "Дополнительные компоненты ядра" #: source/ubl-strings.h:294 msgid "Package:" @@ -1523,7 +1519,7 @@ msgid "" "Selecting kernels for installation in the system and selecting the default kernel. Internet access required" msgstr "" "Выбор ядер для установки в систему и выбор ядра по умолчанию. Требуется " -"доступ В Интернет." +"доступ в Интернет." #: source/ubl-strings.h:414 msgid "" diff --git a/source/ubinstall-gtk-bootloader.c b/source/ubinstall-gtk-bootloader.c index d8cbaa3..3bd4bc4 100644 --- a/source/ubinstall-gtk-bootloader.c +++ b/source/ubinstall-gtk-bootloader.c @@ -26,29 +26,19 @@ int yon_bootloader_save(main_window *widgets){ gtk_tree_model_get(model,&iter,0,&is_admin,1,&username,2,&password,-1); yon_config_register(GRUB_PASSWORD_parameter(username),GRUB_PASSWORD_parameter_command(username),password); if (is_admin){ - yon_config_append_element(GRUB_SUPERUSERS_parameter,GRUB_SUPERUSERS_parameter_command,username); + yon_config_append_element(GRUB_SUPERUSERS_parameter,username,","); } else { yon_config_remove_by_key(GRUB_SUPERUSERS_parameter); } } + if (!main_config.configure_mode){ int user_size=0; - int param_size=0; config_str users = yon_config_get_all_keys_by_key(GRUB_PASSWORD_parameter_search,&user_size); - config_str user_parameters = yon_config_get_save_parameters_by_list(¶m_size,users,user_size); - yon_char_parsed_free(users,user_size); - char *user_string = yon_char_parsed_to_string(user_parameters,param_size," "); - yon_char_parsed_free(user_parameters,param_size); - int size; - config_str parameters = yon_config_get_save_parameters_by_key(&size,GRUB_TIMEOUT_parameter,AUTOLOGINUSER_parameter,GRUB_SUPERUSERS_parameter,NULL); - if (parameters){ - char *command_parameters = yon_char_parsed_to_string(parameters,size," -- "); - char *command = yon_char_unite(ubconfig_dull_command," --target system remove [autoinstall] ",GRUB_PASSWORD_parameter_all,"; ",ubconfig_dull_command,"--target system ",command_parameters, " ", user_string, NULL); - if (!system(yon_debug_output("%s\n",command))){} - free(command); - yon_char_parsed_free(parameters,size); - } + yon_char_parsed_add_or_create_if_exists(users,&user_size,GRUB_SUPERUSERS_parameter); + yon_char_parsed_add_or_create_if_exists(users,&user_size,GRUB_TIMEOUT_parameter); + yon_config_save_list_simple(users, user_size,main_config.config_load_path); } yon_bootloader_interface_update(widgets); @@ -443,6 +433,8 @@ void yon_bootloader_interface_update(main_window *widgets){ for (int i=0;iBootloadUsersList); char *timeout = config(GRUB_TIMEOUT_parameter); char *os = config(GRUB_DEFAULT_parameter); @@ -483,6 +482,7 @@ void yon_bootloader_init(main_window *widgets){ for (int i=0;idata),"kernel_row"); if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck))){ char *append_str = yon_char_replace(row->modules," ",","); - yon_config_append_element(packages_parameter,append_str,","); + yon_config_append_elements(packages_parameter,append_str,","); free(append_str); active_size++; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->EnableRadio))){ @@ -36,15 +36,7 @@ int yon_kernel_save(main_window *widgets){ } if (!main_config.configure_mode){ - int size; - config_str parameters = yon_config_get_save_parameters_by_key(&size,packages_parameter, KERNEL_BOOT_parameter,NULL); - if (parameters){ - char *command_parameters = yon_char_parsed_to_string(parameters,size," -- "); - char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL); - if (!system(yon_debug_output("%s\n",command))){} - free(command); - yon_char_parsed_free(parameters,size); - } + yon_config_save_args_simple(main_config.config_load_path,packages_parameter, KERNEL_BOOT_parameter,NULL); } return 1; @@ -59,7 +51,7 @@ int yon_kernel_addon_save(main_window *widgets){ for(GList *iter = list;iter;iter = iter->next){ kernel_addon_row *row = g_object_get_data(G_OBJECT(iter->data),"kernel_row"); if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck))){ - yon_config_append_element(packages_parameter,row->modules,","); + yon_config_append_elements(packages_parameter,row->modules,","); } else { char *append_str = yon_char_replace(row->modules," ",","); yon_config_remove_elements(packages_parameter,row->modules,","); @@ -69,7 +61,7 @@ int yon_kernel_addon_save(main_window *widgets){ if (!main_config.configure_mode){ int size; - config_str parameters = yon_config_get_save_parameters_by_key(&size,packages_parameter, KERNEL_BOOT_parameter,NULL); + config_str parameters = yon_config_get_save_parameters_by_key(&size,packages_parameter,NULL); if (parameters){ char *command_parameters = yon_char_parsed_to_string(parameters,size," -- "); char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL); @@ -265,6 +257,9 @@ void yon_modules_missed_func(main_window *widgets){ void yon_os_components_init(main_window *widgets){ + if (!main_config.configure_mode){ + yon_config_update_by_args(modules_parameter,NULL); + } int size = 0; GList *list = gtk_container_get_children(GTK_CONTAINER(widgets->OSSoftwareListBox)); GList *iter; @@ -316,7 +311,10 @@ void on_software_uncheck_all(GtkWidget *, main_window *widgets){ GList *iter; for(iter = list;iter;iter=iter->next){ os_row *row = g_object_get_data(iter->data,"kernel_row"); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(row->InstallCheck),0); + int sensitive = gtk_widget_get_sensitive(row->InstallCheck); + if (sensitive){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(row->InstallCheck),0); + } } } break; } @@ -335,11 +333,11 @@ int yon_software_save(main_window *widgets){ } for(iter = list;iter;iter=iter->next){ os_row *row = g_object_get_data(iter->data,"kernel_row"); - char *target = row->name; + char *target = row->name; int status = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck)); if (status){ if (!yon_char_check_element(config_val,target,",")){ - yon_config_append_element(packages_parameter,target,","); + yon_config_append_elements(packages_parameter,target,","); } } else{ char *append_str = yon_char_replace(target," ",","); @@ -373,7 +371,9 @@ int yon_software_check_packages_size(GtkWidget *, main_window *widgets){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck))){ long cur_size = yon_packages_get_installed_size(YON_PACKAGES_ALL,row->name); pacman_size += cur_size; - gtk_widget_show(widgets->AdditionalComponentsUncheckAllCheck); + if (gtk_widget_get_sensitive(row->InstallCheck)){ + gtk_widget_show(widgets->AdditionalComponentsUncheckAllCheck); + } } } } @@ -413,10 +413,30 @@ gboolean yon_software_insert(struct row_data *row_input){ } else { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(row->InstallCheck),0); } + char *modules_param = config(modules_parameter); + if (modules_param&&!strcmp(modules_param,"auto")){ + int final_size; + config_str final = NULL; + for (int i=0;iname,",")){ + gtk_widget_set_sensitive(row->InstallCheck,0); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(row->InstallCheck),1); + } + if (!yon_char_is_empty(modules_param)) free(modules_param); return G_SOURCE_REMOVE; } void yon_software_init(main_window *widgets){ + if (!main_config.configure_mode){ + yon_config_update_by_args(packages_parameter,NULL); + } GList *list = gtk_container_get_children(GTK_CONTAINER(widgets->AdditionalComponentsList)); GList *iter; for (iter=list;iter;iter=iter->next){ @@ -486,6 +506,9 @@ int yon_pacman_software_save(main_window *widgets){ } void yon_pacman_init(main_window *widgets){ + if (!main_config.configure_mode){ + yon_config_update_by_args(packages_parameter,NULL); + } gtk_list_store_clear(widgets->PacmanSoftwareChosenList); char *pacman_packages = config(packages_parameter); @@ -589,7 +612,7 @@ gboolean yon_pacman_fill(struct pacman_struct *pacman){ double size_converted = yon_size_long_convert_automatic(pkgsize,&mod); char *size_str = yon_char_unite(yon_char_from_double(size_converted)," ", yon_size_get_name_from_letter(mod),NULL); gtk_list_store_append(widgets->PacmanSoftwareAllList,&iter); - gtk_list_store_set(widgets->PacmanSoftwareAllList,&iter,0,0,1,loaded[i],2,version,3,description,4,size_str,-1); + gtk_list_store_set(widgets->PacmanSoftwareAllList,&iter,0,0,1,loaded[i],2,version,3,_(description),4,size_str,-1); if (!yon_char_is_empty(version))free(version); if (!yon_char_is_empty(description)) free(description); } @@ -613,6 +636,8 @@ void *yon_pacman_load(struct pacman_struct *pacman){ void on_pacman_search_enter(GtkEntry *self, main_window *widgets){ on_pacman_icon_press(self,GTK_ENTRY_ICON_SECONDARY,NULL,widgets); + while (gtk_events_pending()) gtk_main_iteration(); + gtk_widget_grab_focus(widgets->PacmanSoftwareSearchEntry); } void on_pacman_icon_press(GtkEntry *self,GtkEntryIconPosition icon_pos,GdkEvent* ,main_window *widgets){ @@ -621,6 +646,7 @@ void on_pacman_icon_press(GtkEntry *self,GtkEntryIconPosition icon_pos,GdkEvent* gtk_list_store_clear(widgets->PacmanSoftwareAllList); const char *find_package = gtk_entry_get_text(self); + if (strlen(find_package)<2) return; struct pacman_struct *pacman = new (struct pacman_struct); pacman->widgets=widgets; pacman->find_package=find_package; diff --git a/source/ubinstall-gtk-configuration-mode.c b/source/ubinstall-gtk-configuration-mode.c index 6bed3fc..4d02b01 100644 --- a/source/ubinstall-gtk-configuration-mode.c +++ b/source/ubinstall-gtk-configuration-mode.c @@ -26,9 +26,17 @@ int yon_configuration_path_check(const char *path){ data->action_text = homedir_create?CREATE_CONFIG_DIALOG_LABEL_HOMEDIR:CREATE_CONFIG_DIALOG_LABEL; data->title = WARNING_TITLE_LABEL; if (yon_confirmation_dialog_call(NULL,data)==GTK_RESPONSE_ACCEPT){ + char *dir_path = yon_file_get_parent(full_path); + if (access(full_path,F_OK)&&(access(dir_path,W_OK)||access(dir_path,R_OK))){ + if (system(ubconfig_file_create_pkexec(full_path))){ + return 0; + } + } else if (access(full_path,F_OK)){ yon_launch(ubconfig_file_create(full_path)); struct passwd *user = getpwnam(yon_ubl_root_user_get()); if (chown(full_path,user->pw_uid,user->pw_gid)){}; + } + } else { return 0; diff --git a/source/ubinstall-gtk-grub.c b/source/ubinstall-gtk-grub.c index 9dc05a8..0e151f3 100644 --- a/source/ubinstall-gtk-grub.c +++ b/source/ubinstall-gtk-grub.c @@ -57,15 +57,7 @@ int yon_grub_update_save(main_window *widgets){ yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_update"); if (!main_config.configure_mode){ - int size; - config_str parameters = yon_config_get_save_parameters_by_key(&size,device_parameter,part_parameter,AUTOINSTALL_TYPE_INSTALL,NULL); - if (parameters){ - char *command_parameters = yon_char_parsed_to_string(parameters,size," -- "); - char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL); - if (!system(yon_debug_output("%s\n",command))){} - free(command); - yon_char_parsed_free(parameters,size); - } + yon_config_save_args_simple(main_config.config_load_path,device_parameter,part_parameter,AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL,NULL); } return 1; } \ No newline at end of file diff --git a/source/ubinstall-gtk-installation.c b/source/ubinstall-gtk-installation.c index 3e9cae3..4a0d2d3 100644 --- a/source/ubinstall-gtk-installation.c +++ b/source/ubinstall-gtk-installation.c @@ -30,15 +30,7 @@ int yon_install_common_save(main_window *widgets){ } if (!main_config.configure_mode){ - int size; - config_str parameters = yon_config_get_save_parameters_by_key(&size,AUTOINSTALL_TYPE_INSTALL,device_parameter,part_label_parameter,part_fs_type_parameter,NULL); - if (parameters){ - char *command_parameters = yon_char_parsed_to_string(parameters,size," -- "); - char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL); - if (!system(yon_debug_output("%s\n",command))){} - free(command); - yon_char_parsed_free(parameters,size); - } + yon_config_save_args_simple(main_config.config_load_path,AUTOINSTALL_TYPE_INSTALL,device_parameter,part_label_parameter,part_fs_type_parameter,NULL); } return 1; } @@ -112,15 +104,7 @@ int yon_install_separate_save(main_window *widgets){ } if (!main_config.configure_mode){ - int size; - config_str parameters = yon_config_get_save_parameters_by_key(&size,part_format_parameter,part_label_parameter,part_fs_type_parameter,device_parameter,part_parameter,NULL); - if (parameters){ - char *command_parameters = yon_char_parsed_to_string(parameters,size," -- "); - char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL); - if (!system(yon_debug_output("%s\n",command))){} - free(command); - yon_char_parsed_free(parameters,size); - } + yon_config_save_args_simple(main_config.config_load_path,part_format_parameter,part_label_parameter,part_fs_type_parameter,device_parameter,part_parameter,NULL); } return 1; } @@ -170,15 +154,7 @@ int yon_install_same_partition_save(main_window *widgets){ yon_config_remove_by_key(part_fs_type_parameter); } if (!main_config.configure_mode){ - int size; - config_str parameters = yon_config_get_save_parameters_by_key(&size,part_format_parameter,part_size_parameter,part_label_parameter,part_fs_type_parameter,AUTOINSTALL_TYPE_INSTALL,device_parameter,part_parameter,NULL); - if (parameters){ - char *command_parameters = yon_char_parsed_to_string(parameters,size," -- "); - char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL); - if (!system(yon_debug_output("%s\n",command))){} - free(command); - yon_char_parsed_free(parameters,size); - } + yon_config_save_args_simple(main_config.config_load_path,part_format_parameter,part_size_parameter,part_label_parameter,part_fs_type_parameter,AUTOINSTALL_TYPE_INSTALL,device_parameter,part_parameter,NULL); } return 1; } @@ -340,6 +316,9 @@ void yon_userdata_password_open(GtkWidget *, main_window *widgets){ } void yon_install_init(main_window *widgets, enum YON_PAGES page){ + if (!main_config.configure_mode){ + yon_config_update_by_args(AUTOINSTALL_TYPE_INSTALL,device_parameter,part_label_parameter,part_fs_type_parameter,NULL); + } yon_devices_setup(widgets); GtkWidget *device_tree = NULL; diff --git a/source/ubinstall-gtk-kernel.c b/source/ubinstall-gtk-kernel.c index 5f5484c..d57d181 100644 --- a/source/ubinstall-gtk-kernel.c +++ b/source/ubinstall-gtk-kernel.c @@ -3,11 +3,21 @@ void on_kernel_install_enabled(GtkWidget *, kernel_row *row){ int active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck)); gtk_widget_set_sensitive(row->EnableRadio,active); - if (!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck))){ + if (!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck))&>k_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->EnableRadio))){ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(main_config.kernel_unchosen_radio),1); } } +gboolean on_kernel_enabled_toggled(GtkWidget *self, GdkEventButton *, kernel_row *row){ + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->EnableRadio))){ + g_signal_handlers_block_by_func(G_OBJECT(self),"toggled",row); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(main_config.kernel_unchosen_radio),1); + g_signal_handlers_unblock_by_func(G_OBJECT(self),"toggled",row); + return 1; + } + return 0; +} + kernel_row *yon_kernel_row_new(){ kernel_row *row = new(kernel_row); GtkBuilder *builder = gtk_builder_new_from_resource(glade_path_kernel_row); @@ -26,6 +36,7 @@ kernel_row *yon_kernel_row_new(){ row->package=NULL; g_signal_connect(G_OBJECT(row->InstallCheck),"toggled",G_CALLBACK(on_kernel_install_enabled),row); + g_signal_connect(G_OBJECT(row->EnableRadio),"button-release-event",G_CALLBACK(on_kernel_enabled_toggled),row); row->row = gtk_list_box_row_new(); gtk_container_add(GTK_CONTAINER(row->row),row->RowBox); @@ -175,7 +186,10 @@ void yon_kernel_addon_resize(main_window *widgets){ g_list_free(list); } -void yon_kernel_setup(main_window *widgets){ +void yon_kernel_init(main_window *widgets){ + if (!main_config.configure_mode){ + yon_config_update_by_args(packages_parameter,KERNEL_BOOT_parameter,NULL); + } GList *list = gtk_container_get_children(GTK_CONTAINER(widgets->KernelListBox)); GList *iter; for (iter = list; iter; iter = iter->next){ @@ -225,6 +239,10 @@ void yon_kernel_setup(main_window *widgets){ } else { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(row->InstallCheck),0); } + if (yon_packages_check_installed(parsed[1])||yon_packages_check_installed(package)){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(row->InstallCheck),1); + gtk_widget_set_sensitive(row->InstallCheck,0); + } if (!yon_char_is_empty(enabled)&&!strcmp(package,enabled)){ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(row->EnableRadio),1); } @@ -376,7 +394,11 @@ void yon_kernel_addon_row_setup(kernel_addon_row *row, char *name, char *modules free(description_full); } -void yon_kernel_addon_setup(main_window *widgets){ +void yon_kernel_addon_init(main_window *widgets){ + yon_config_remove_by_args(packages_parameter,NULL); + char *command = yon_config_parameter_prepare_command(packages_parameter_command,main_config.config_load_path,NULL,NULL); + yon_config_load_config(YON_CONFIG_CUSTOM,command,NULL); + free(command); GList *list = gtk_container_get_children(GTK_CONTAINER(widgets->KernelAddonListBox)); GList *iter; for (iter = list; iter; iter = iter->next){ @@ -419,6 +441,10 @@ void yon_kernel_addon_setup(main_window *widgets){ } else { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(row->InstallCheck),0); } + if (yon_packages_check_installed(modules)||yon_packages_check_installed(package)){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(row->InstallCheck),1); + gtk_widget_set_sensitive(row->InstallCheck,0); + } } yon_kernel_addon_resize(widgets); diff --git a/source/ubinstall-gtk-keyboard.c b/source/ubinstall-gtk-keyboard.c index e82afa0..7aa1ea6 100644 --- a/source/ubinstall-gtk-keyboard.c +++ b/source/ubinstall-gtk-keyboard.c @@ -48,21 +48,16 @@ int yon_keyboard_save(main_window *widgets){ yon_config_remove_by_key(num_lock_boot_parameter); } if (!main_config.configure_mode){ - int size; - config_str parameters = yon_config_get_save_parameters_by_key(&size,xkbmodel_parameter,xkbmodel_parameter,num_lock_boot_parameter,NULL); - if (parameters){ - char *command_parameters = yon_char_parsed_to_string(parameters,size," -- "); - char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL); - if (!system(yon_debug_output("%s\n",command))){} - free(command); - yon_char_parsed_free(parameters,size); - } + yon_config_save_args_simple(main_config.config_load_path,xkbmodel_parameter,num_lock_boot_parameter,NULL); } on_options_save(NULL,widgets); return 1; } void yon_keyboard_init(main_window *widgets){ + if (!main_config.configure_mode){ + yon_config_update_by_args(xkbmodel_parameter,num_lock_boot_parameter,NULL); + } g_signal_handlers_block_by_func(G_OBJECT(widgets->KeyboardModelCombo),G_CALLBACK(on_model_changed),widgets); g_signal_handlers_block_by_func(G_OBJECT(widgets->KeyboardDefaultLayoutsSwitch),G_CALLBACK(on_layout_default_toggled),widgets); gtk_combo_box_text_remove_all(GTK_COMBO_BOX_TEXT(widgets->KeyboardModelCombo)); diff --git a/source/ubinstall-gtk-language.c b/source/ubinstall-gtk-language.c index bc8bcda..450d100 100644 --- a/source/ubinstall-gtk-language.c +++ b/source/ubinstall-gtk-language.c @@ -273,20 +273,15 @@ int yon_language_save(main_window *widgets){ yon_config_remove_by_key(locale_parameter); } if (!main_config.configure_mode){ - int size; - config_str parameters = yon_config_get_save_parameters_by_key(&size,lang_parameter,locale_parameter,NULL); - if (parameters){ - char *command_parameters = yon_char_parsed_to_string(parameters,size," -- "); - char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL); - if (!system(yon_debug_output("%s\n",command))){} - free(command); - yon_char_parsed_free(parameters,size); - } + yon_config_save_args_simple(main_config.config_load_path,lang_parameter,locale_parameter,NULL); } return 1; } void yon_language_init(main_window *widgets){ + if (!main_config.configure_mode){ + yon_config_update_by_args(lang_parameter, locale_parameter,NULL); + } yon_language_update(widgets); } diff --git a/source/ubinstall-gtk-network.c b/source/ubinstall-gtk-network.c index 5e743f7..cad5d64 100644 --- a/source/ubinstall-gtk-network.c +++ b/source/ubinstall-gtk-network.c @@ -187,6 +187,10 @@ int yon_network_save(main_window *widgets){ } else { yon_config_remove_by_key(DOMAIN_admanger_parameter); } + } else { + yon_config_remove_by_key(DOMAIN_parameter); + yon_config_remove_by_key(DOMAIN_admanger_parameter); + } if (gtk_switch_get_active(GTK_SWITCH(widgets->NetworkNTPServerSwitch))){ @@ -226,7 +230,7 @@ int yon_network_save(main_window *widgets){ hostname = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->HotnameEntry)); } if (yon_char_is_empty(hostname)){ - yon_ubl_status_box_render(_EMPTY_IMPORTANT_LABEL,BACKGROUND_IMAGE_FAIL_TYPE); + yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),_EMPTY_IMPORTANT_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); yon_ubl_status_highlight_incorrect(widgets->HotnameEntry); return 0; } @@ -235,6 +239,16 @@ int yon_network_save(main_window *widgets){ yon_config_remove_by_key(hostname_parameter); } + { + int size; + config_str users = yon_config_get_all_by_key(NETWORK_parameter_search,&size); + for (int i=0;iNetworkConnectionsBox)); GList *iter; for (iter=list;iter;iter=iter->next){ @@ -290,26 +304,25 @@ int yon_network_save(main_window *widgets){ } } if (!main_config.configure_mode){ - int connect_size; - - config_str connections = yon_config_get_all_by_key(NETWORK_parameter_search,&connect_size); - char *connections_string = yon_char_parsed_to_string(connections,connect_size," "); - yon_char_parsed_free(connections,connect_size); - - int size; - config_str parameters = yon_config_get_save_parameters_by_key(&size,DOMAIN_parameter,DOMAIN_admanger_parameter,NTPSERVERS_parameter,hostname_parameter,NULL); - if (parameters){ - char *command_parameters = yon_char_parsed_to_string(parameters,size," -- "); - char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters, " ", connections_string,NULL); - if (!system(yon_debug_output("%s\n",command))){} - free(command); - yon_char_parsed_free(parameters,size); - } + int connect_size=0; + config_str connections = yon_config_get_all_keys_by_key(NETWORK_parameter_search,&connect_size); + yon_char_parsed_add_or_create_if_exists(connections,&connect_size,DOMAIN_parameter); + yon_char_parsed_add_or_create_if_exists(connections,&connect_size,DOMAIN_admanger_parameter); + yon_char_parsed_add_or_create_if_exists(connections,&connect_size,NTPSERVERS_parameter); + yon_char_parsed_add_or_create_if_exists(connections,&connect_size,hostname_parameter); + yon_config_save_list_simple(connections,connect_size,main_config.config_load_path); } return 1; } void yon_network_init(main_window *widgets){ + if (!main_config.configure_mode){ + int size = 0; + config_str users = yon_config_get_all_by_key(NETWORK_parameter_search,&size); + yon_config_remove_by_list(users,size); + yon_config_update_by_args(DOMAIN_parameter,DOMAIN_admanger_parameter,NTPSERVERS_parameter,hostname_parameter,NULL); + yon_config_load_config(YON_CONFIG_CUSTOM,ubconfig_load_command(main_config.config_load_path),NETWORK_parameter_all,NULL); + } GList *list = gtk_container_get_children(GTK_CONTAINER(widgets->NetworkConnectionsBox)); GList *iter; for (iter=list;iter;iter=iter->next){ @@ -392,6 +405,7 @@ void yon_network_init(main_window *widgets){ for (int i=0;iPackagesList),&subiter,0,&status,1,&package,3,&selectable,-1); if (selectable&&status){ - yon_config_append_element(packages_parameter,package,","); + yon_config_append_elements(packages_parameter,package,","); }else if (selectable&&!status){ yon_config_remove_elements(packages_parameter,package,","); } else { for (int valid3 = gtk_tree_model_iter_children(GTK_TREE_MODEL(widgets->PackagesList),&packiter,&subiter);valid3;valid3 = gtk_tree_model_iter_next(GTK_TREE_MODEL(widgets->PackagesList),&packiter)){ gtk_tree_model_get(GTK_TREE_MODEL(widgets->PackagesList),&packiter,0,&status,1,&package,3,&selectable,-1); if (status){ - yon_config_append_element(packages_parameter,package,","); + yon_config_append_elements(packages_parameter,package,","); } else { yon_config_remove_elements(packages_parameter,package,","); } @@ -28,15 +28,7 @@ int yon_packages_tab_save(main_window *widgets){ } } if (!main_config.configure_mode){ - int size; - config_str parameters = yon_config_get_save_parameters_by_key(&size,packages_parameter,NULL); - if (parameters){ - char *command_parameters = yon_char_parsed_to_string(parameters,size," -- "); - char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL); - if (!system(yon_debug_output("%s\n",command))){} - free(command); - yon_char_parsed_free(parameters,size); - } + yon_config_save_args_simple(main_config.config_load_path,packages_parameter,NULL); } return 1; } @@ -71,7 +63,28 @@ GtkTreeIter *yon_subcategory_check(GtkTreeStore *target, GtkTreeIter *parent_ite } void yon_packages_tab_init(main_window *widgets){ + if (!main_config.configure_mode){ + yon_config_update_by_args(packages_parameter,NULL); + } + if (!main_config.configure_mode){ + yon_config_remove_by_args(packages_parameter,NULL); + char *command = yon_config_parameter_prepare_command(packages_parameter_command,main_config.config_load_path,NULL,NULL); + yon_config_load_config(YON_CONFIG_CUSTOM,command,NULL); + free(command); + } gtk_tree_store_clear(widgets->PackagesList); + char *modules = config(modules_parameter); + if (modules&&!strcmp(modules,"auto")){ + int final_size; + config_str final = NULL; + for (int i=0;iPackagesList,parsed[0]); + char *name_render = yon_char_replace(parsed[2],","," "); if (category_iter){ if (!yon_char_is_empty(parsed[1])){ GtkTreeIter *subcategory_iter = yon_subcategory_check(widgets->PackagesList,category_iter,parsed[1]); if (subcategory_iter){ GtkTreeIter package_iter; gtk_tree_store_append(widgets->PackagesList,&package_iter,subcategory_iter); - char *full_string = yon_char_unite("",parsed[2],"\n",_(parsed[3]),NULL); - gtk_tree_store_set(widgets->PackagesList,&package_iter,0,!!yon_char_check_element(config_packages,parsed[2],","),1,parsed[2],2,full_string,3,1,-1); + char *full_string = yon_char_unite("",name_render,"\n",_(parsed[3]),NULL); + gtk_tree_store_set(widgets->PackagesList,&package_iter,0,!!yon_char_check_element(config_packages,parsed[2],",")||yon_char_check_element(modules,parsed[2],","),1,parsed[2],2,full_string,3,1,4,!yon_char_check_element(modules,parsed[2],","),5,parsed[2],-1); free(full_string); gtk_tree_iter_free(subcategory_iter); } else { @@ -96,15 +110,15 @@ void yon_packages_tab_init(main_window *widgets){ gtk_tree_store_append(widgets->PackagesList,&subcatiter,category_iter); gtk_tree_store_set(widgets->PackagesList,&subcatiter,1,parsed[1],2,_(parsed[3]),3,0,-1); gtk_tree_store_append(widgets->PackagesList,&package_iter,&subcatiter); - char *full_string = yon_char_unite("",parsed[2],"\n",_(parsed[3]),NULL); - gtk_tree_store_set(widgets->PackagesList,&package_iter,0,!!yon_char_check_element(config_packages,parsed[2],","),1,parsed[2],2,full_string,3,1,-1); + char *full_string = yon_char_unite("",name_render,"\n",_(parsed[3]),NULL); + gtk_tree_store_set(widgets->PackagesList,&package_iter,0,!!yon_char_check_element(config_packages,parsed[2],",")||yon_char_check_element(modules,parsed[2],","),1,parsed[2],2,full_string,3,1,4,!yon_char_check_element(modules,parsed[2],","),5,parsed[2],-1); free(full_string); } } else { GtkTreeIter package_iter; gtk_tree_store_append(widgets->PackagesList,&package_iter,category_iter); - char *full_string = yon_char_unite("",parsed[2],"\n",_(parsed[3]),NULL); - gtk_tree_store_set(widgets->PackagesList,&package_iter,0,!!yon_char_check_element(config_packages,parsed[2],","),1,parsed[2],2,full_string,3,1,-1); + char *full_string = yon_char_unite("",name_render,"\n",_(parsed[3]),NULL); + gtk_tree_store_set(widgets->PackagesList,&package_iter,0,!!yon_char_check_element(config_packages,parsed[2],",")||yon_char_check_element(modules,parsed[2],","),1,parsed[2],2,full_string,3,1,4,!yon_char_check_element(modules,parsed[2],","),5,parsed[2],-1); free(full_string); } gtk_tree_iter_free(category_iter); @@ -118,8 +132,8 @@ void yon_packages_tab_init(main_window *widgets){ gtk_tree_store_append(widgets->PackagesList,&subcategory_iter,&catiter); gtk_tree_store_set(widgets->PackagesList,&subcategory_iter,1,parsed[1],2,_(parsed[1]),3,0,-1); gtk_tree_store_append(widgets->PackagesList,&package_iter,&subcategory_iter); - char *full_string = yon_char_unite("",parsed[2],"\n",_(parsed[3]),NULL); - gtk_tree_store_set(widgets->PackagesList,&package_iter,1,parsed[2],2,full_string,3,1,-1); + char *full_string = yon_char_unite("",name_render,"\n",_(parsed[3]),NULL); + gtk_tree_store_set(widgets->PackagesList,&package_iter,0,!!yon_char_check_element(config_packages,parsed[2],",")||yon_char_check_element(modules,parsed[2],","),1,parsed[2],2,full_string,3,1,4,!yon_char_check_element(modules,parsed[2],","),-1); free(full_string); } else { GtkTreeIter package_iter; @@ -127,12 +141,13 @@ void yon_packages_tab_init(main_window *widgets){ gtk_tree_store_append(widgets->PackagesList,&catiter,NULL); gtk_tree_store_set(widgets->PackagesList,&catiter,1,parsed[0],2,_(parsed[0]),3,0,-1); gtk_tree_store_append(widgets->PackagesList,&package_iter,&catiter); - char *full_string = yon_char_unite("",parsed[2],"\n",_(parsed[3]),NULL); - gtk_tree_store_set(widgets->PackagesList,&package_iter,0,!!yon_char_check_element(config_packages,parsed[2],","),1,parsed[2],2,full_string,3,1,-1); + char *full_string = yon_char_unite("",name_render,"\n",_(parsed[3]),NULL); + gtk_tree_store_set(widgets->PackagesList,&package_iter,0,!!yon_char_check_element(config_packages,parsed[2],",")||yon_char_check_element(modules,parsed[2],","),1,parsed[2],2,full_string,3,1,4,!yon_char_check_element(modules,parsed[2],","),5,parsed[2],-1); free(full_string); } } } + if (!yon_char_is_empty(modules)) free(modules); gtk_tree_view_expand_all(GTK_TREE_VIEW(widgets->PackagesTree)); } @@ -165,14 +180,20 @@ void yon_on_packages_chosen(GtkWidget *, char *path, main_window *widgets){ GtkTreeIter iter; gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(widgets->PackagesList),&iter,path); int status; - gtk_tree_model_get(GTK_TREE_MODEL(widgets->PackagesList),&iter,0,&status,-1); - gtk_tree_store_set(widgets->PackagesList,&iter,0,!status,-1); + int sensitive; + gtk_tree_model_get(GTK_TREE_MODEL(widgets->PackagesList),&iter,0,&status,4,&sensitive,-1); + if (sensitive){ + gtk_tree_store_set(widgets->PackagesList,&iter,0,!status,-1); + } } void yon_on_packages_activated(GtkWidget *, GtkTreePath* path, GtkTreeViewColumn* , main_window *widgets){ GtkTreeIter iter; gtk_tree_model_get_iter(GTK_TREE_MODEL(widgets->PackagesList),&iter,path); + int sensitive; int status; - gtk_tree_model_get(GTK_TREE_MODEL(widgets->PackagesList),&iter,0,&status,-1); - gtk_tree_store_set(widgets->PackagesList,&iter,0,!status,-1); + gtk_tree_model_get(GTK_TREE_MODEL(widgets->PackagesList),&iter,0,&status,4,&sensitive,-1); + if (sensitive){ + gtk_tree_store_set(widgets->PackagesList,&iter,0,!status,-1); + } } \ No newline at end of file diff --git a/source/ubinstall-gtk-page-switch.c b/source/ubinstall-gtk-page-switch.c index 01ff02a..aef5eda 100644 --- a/source/ubinstall-gtk-page-switch.c +++ b/source/ubinstall-gtk-page-switch.c @@ -53,7 +53,7 @@ enum YON_PAGES yon_page_get_next(main_window *widgets, enum YON_PAGES page){ return -1; } -enum YON_PAGES yon_page_get_prev(enum YON_PAGES page){ +enum YON_PAGES yon_page_get_prev(main_window *,enum YON_PAGES page){ switch (page){ case YON_PAGE_WELCOME: return YON_PAGE_WELCOME; break; case YON_PAGE_LICENCE: return YON_PAGE_WELCOME; break; @@ -92,7 +92,6 @@ enum YON_PAGES yon_page_get_prev(enum YON_PAGES page){ } break; case YON_PAGE_INSTALLATION_BEGIN: return YON_PAGE_OS_COMPONENTS; break; case YON_PAGE_SOFTWARE: return YON_PAGE_CONFIG_HUB; break; - case YON_PAGE_CONFIG_HUB: return YON_PAGE_CONFIG_HUB; break; case YON_PAGE_KERNEL: return YON_PAGE_CONFIG_HUB; break; case YON_PAGE_KERNEL_ADDON: return YON_PAGE_CONFIG_HUB; break; case YON_PAGE_PACMAN_SOFTWARE: return YON_PAGE_CONFIG_HUB; break; @@ -177,10 +176,11 @@ void yon_navigation_buttons_set_sensetiveness(main_window *widgets){ break; case YON_PAGE_SECTIONS: gtk_widget_show(widgets->SourceButton); - gtk_widget_show(widgets->BackButton); + gtk_widget_show(widgets->BackButton); gtk_widget_set_sensitive(widgets->BackButton,1); gtk_widget_set_sensitive(widgets->NextButton,1); gtk_widget_set_sensitive(widgets->CancelInstallButton,1); + gtk_button_set_label(GTK_BUTTON(widgets->CancelInstallButton),EXIT_LABEL); if (!yon_char_is_empty(config(AUTOINSTALL_TYPE_INSTALL))&&!main_config.configure_mode){ gtk_widget_show(widgets->StartScenarioButton); } else { @@ -208,6 +208,7 @@ void yon_navigation_buttons_set_sensetiveness(main_window *widgets){ case YON_PAGE_BOOTLOADER: case YON_PAGE_PACKAGES: case YON_PAGE_NETWORK:{ + gtk_button_set_label(GTK_BUTTON(widgets->CancelInstallButton),CANCEL_LABEL); gtk_widget_show(widgets->NextButton); gtk_widget_hide(widgets->BackButton); gtk_button_set_label(GTK_BUTTON(widgets->NextButton),BACK_LABEL); @@ -429,10 +430,10 @@ void yon_page_init(main_window *widgets, enum YON_PAGES page){ yon_os_components_init(widgets); break; case YON_PAGE_KERNEL: - yon_kernel_setup(widgets); + yon_kernel_init(widgets); break; case YON_PAGE_KERNEL_ADDON: - yon_kernel_addon_setup(widgets); + yon_kernel_addon_init(widgets); break; case YON_PAGE_SOFTWARE: yon_software_init(widgets); @@ -453,10 +454,10 @@ void yon_page_init(main_window *widgets, enum YON_PAGES page){ yon_user_init(widgets); break; case YON_PAGE_STARTUP: - yon_startup_services_setup(widgets); + yon_startup_services_init(widgets); break; case YON_PAGE_APP_STARTUP: - yon_startup_apps_setup(widgets); + yon_startup_apps_init(widgets); break; case YON_PAGE_BOOTLOADER: yon_bootloader_init(widgets); @@ -479,6 +480,17 @@ void yon_page_init(main_window *widgets, enum YON_PAGES page){ case YON_PAGE_RECOVERY_USRDATA_ONLY: case YON_PAGE_INSTALLATION_BEGIN: yon_install_init(widgets,page); + { + int size=0; + char *command = yon_config_parameter_prepare_command(AUTOINSTALL_TYPE_INSTALL_command,"system",NULL,NULL); + config_str autoinstall_param = yon_config_load(command,&size); + if (size&&!yon_char_is_empty(autoinstall_param[0])&&strcmp(autoinstall_param[0],"(null)\n")&&!main_config.configure_mode){ + gtk_widget_show(widgets->StartScenarioButton); + } else { + gtk_widget_hide(widgets->StartScenarioButton); + } + yon_char_parsed_free(autoinstall_param,size); + } break; case YON_PAGE_INSTALLATION: yon_install_slider_init(widgets); @@ -507,7 +519,7 @@ void on_page_next_clicked(GtkWidget *, main_window *widgets){ void on_page_prev_clicked(GtkWidget *, main_window *widgets){ enum YON_PAGES page = gtk_notebook_get_current_page(GTK_NOTEBOOK(widgets->Notebook)); - page = yon_page_get_prev(page); + page = yon_page_get_prev(widgets,page); if ((int)page!=-1){ gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),page); } @@ -529,6 +541,9 @@ void on_page_cancel_clicked(GtkWidget *, main_window *widgets){ gtk_main_quit(); break; + case YON_PAGE_SECTIONS: + on_yon_exit(NULL,NULL,widgets); + break; default: { if (main_config.install_thread){ dialog_confirmation_data *data = yon_confirmation_dialog_data_new(); diff --git a/source/ubinstall-gtk-region.c b/source/ubinstall-gtk-region.c index 57047a3..a6080d3 100644 --- a/source/ubinstall-gtk-region.c +++ b/source/ubinstall-gtk-region.c @@ -19,15 +19,7 @@ int yon_region_save(main_window *widgets){ yon_config_register(zone_parameter,zone_parameter_command,final); free(final); if (!main_config.configure_mode){ - int size; - config_str parameters = yon_config_get_save_parameters_by_key(&size,zone_parameter,NULL); - if (parameters){ - char *command_parameters = yon_char_parsed_to_string(parameters,size," -- "); - char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL); - if (!system(yon_debug_output("%s\n",command))){} - free(command); - yon_char_parsed_free(parameters,size); - } + yon_config_save_args_simple(main_config.config_load_path,zone_parameter,NULL); } return 1; } @@ -197,6 +189,9 @@ void on_region_entry_changed(GtkWidget *, main_window *widgets){ } void yon_region_init(main_window *widgets){ + if (!main_config.configure_mode){ + yon_config_update_by_args(zone_parameter,NULL); + } yon_timezone_init(); gtk_combo_box_text_remove_all(GTK_COMBO_BOX_TEXT(widgets->RegionCombo)); gtk_combo_box_text_remove_all(GTK_COMBO_BOX_TEXT(widgets->KeyboardNumLockCombo)); diff --git a/source/ubinstall-gtk-saving.c b/source/ubinstall-gtk-saving.c index 5f1d6c7..ed67324 100644 --- a/source/ubinstall-gtk-saving.c +++ b/source/ubinstall-gtk-saving.c @@ -43,24 +43,9 @@ void on_config_local_load(GtkWidget *,main_window *widgets){ yon_page_init(widgets,gtk_notebook_get_current_page(GTK_NOTEBOOK(widgets->Notebook))); } -void on_config_global_load(GtkWidget *,main_window *widgets){ - if (!yon_char_is_empty(main_config.force_ini)) { - on_config_custom_load_last(NULL,widgets); - return; - } - if (!yon_char_is_empty(main_config.config_load_path)) free(main_config.config_load_path); - main_config.config_load_path = yon_char_new("global"); - yon_load_proceed(YON_CONFIG_GLOBAL); - main_config.load_mode=YON_CONFIG_GLOBAL; - yon_main_window_update_locale(widgets); - yon_page_init(widgets,gtk_notebook_get_current_page(GTK_NOTEBOOK(widgets->Notebook))); -} - void on_config_custom_load(GtkWidget *,main_window *){ yon_load_proceed(YON_CONFIG_CUSTOM); - // yon_page_init(widgets,gtk_notebook_get_current_page(GTK_NOTEBOOK(widgets->Notebook))); main_config.load_mode=YON_CONFIG_CUSTOM; - // yon_main_window_update_locale(widgets); } void on_config_custom_load_last(GtkWidget *,main_window *){ @@ -69,9 +54,7 @@ void on_config_custom_load_last(GtkWidget *,main_window *){ yon_config_load_config(YON_CONFIG_DEFAULT,config_get_default_command,NULL); char *command = config_get_command(main_config.config_load_path); yon_config_load_config(YON_CONFIG_CUSTOM,command,NULL); - // yon_page_init(widgets,gtk_notebook_get_current_page(GTK_NOTEBOOK(widgets->Notebook))); main_config.load_mode=YON_CONFIG_CUSTOM; - // yon_main_window_update_locale(widgets); } void on_config_global_local_save(GtkWidget *,main_window *widgets){ diff --git a/source/ubinstall-gtk-separate.c b/source/ubinstall-gtk-separate.c index 4a8aeb4..809e43b 100644 --- a/source/ubinstall-gtk-separate.c +++ b/source/ubinstall-gtk-separate.c @@ -23,15 +23,7 @@ int yon_install_options_save(GtkWidget *device_tree, GtkWidget *part_tree,char * if(cur_section) free(cur_section); if(cur_device) free(cur_device); if (!main_config.configure_mode){ - int size; - config_str parameters = yon_config_get_save_parameters_by_key(&size,device_parameter,AUTOINSTALL_TYPE_INSTALL,part_parameter,NULL); - if (parameters){ - char *command_parameters = yon_char_parsed_to_string(parameters,size," -- "); - char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL); - if (!system(yon_debug_output("%s\n",command))){} - free(command); - yon_char_parsed_free(parameters,size); - } + yon_config_save_args_simple(main_config.config_load_path,device_parameter,AUTOINSTALL_TYPE_INSTALL,part_parameter,NULL); } return 1; } \ No newline at end of file diff --git a/source/ubinstall-gtk-source.c b/source/ubinstall-gtk-source.c index 793e480..8e1791e 100644 --- a/source/ubinstall-gtk-source.c +++ b/source/ubinstall-gtk-source.c @@ -222,15 +222,7 @@ void on_source_accept(GtkWidget *,source_window *window){ yon_config_remove_by_key(source_parameter); } if (!main_config.configure_mode){ - int size; - config_str parameters = yon_config_get_save_parameters_by_key(&size,source_parameter,NULL); - if (parameters){ - char *command_parameters = yon_char_parsed_to_string(parameters,size," -- "); - char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL); - if (!system(command)){} - free(command); - yon_char_parsed_free(parameters,size); - } + yon_config_save_args_simple(main_config.config_load_path,source_parameter,NULL); } on_subwindow_close(window->Window); free(window); diff --git a/source/ubinstall-gtk-startup-apps.c b/source/ubinstall-gtk-startup-apps.c index 65a42c9..a39af09 100644 --- a/source/ubinstall-gtk-startup-apps.c +++ b/source/ubinstall-gtk-startup-apps.c @@ -41,7 +41,10 @@ void on_startup_apps_remove(GtkWidget *self,main_window *widgets){ } } -void yon_startup_apps_setup(main_window *widgets){ +void yon_startup_apps_init(main_window *widgets){ + if (!main_config.configure_mode){ + yon_config_update_by_args(AUTOEXEC_parameter,NULL); + } GtkTreeIter iter; gtk_list_store_clear(widgets->StartupAppsList); int size; @@ -213,15 +216,7 @@ int yon_startup_app_save(main_window *widgets){ yon_config_remove_by_key(AUTOEXEC_parameter); } if (!main_config.configure_mode){ - int size; - config_str parameters = yon_config_get_save_parameters_by_key(&size,AUTOEXEC_parameter,NULL); - if (parameters){ - char *command_parameters = yon_char_parsed_to_string(parameters,size," -- "); - char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL); - if (!system(yon_debug_output("%s\n",command))){} - free(command); - yon_char_parsed_free(parameters,size); - } + yon_config_save_args_simple(main_config.config_load_path,AUTOEXEC_parameter,NULL); } return 1; } \ No newline at end of file diff --git a/source/ubinstall-gtk-startup-services.c b/source/ubinstall-gtk-startup-services.c index df22c6b..b03bffb 100644 --- a/source/ubinstall-gtk-startup-services.c +++ b/source/ubinstall-gtk-startup-services.c @@ -49,7 +49,10 @@ void on_startup_services_remove(GtkWidget *self,main_window *widgets){ } } -void yon_startup_services_setup(main_window *widgets){ +void yon_startup_services_init(main_window *widgets){ + if (!main_config.configure_mode){ + yon_config_update_by_args(SERVICES_ENABLE_parameter,NULL); + } GtkTreeIter iter; gtk_list_store_clear(widgets->StartupList); int size; @@ -217,15 +220,7 @@ int yon_startup_save(main_window *widgets){ yon_config_remove_by_key(SERVICES_ENABLE_parameter); } if (!main_config.configure_mode){ - int size; - config_str parameters = yon_config_get_save_parameters_by_key(&size,SERVICES_ENABLE_parameter,NULL); - if (parameters){ - char *command_parameters = yon_char_parsed_to_string(parameters,size," -- "); - char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL); - if (!system(yon_debug_output("%s\n",command))){} - free(command); - yon_char_parsed_free(parameters,size); - } + yon_config_save_args_simple(main_config.config_load_path,SERVICES_ENABLE_parameter,NULL); } return 1; } \ No newline at end of file diff --git a/source/ubinstall-gtk-users.c b/source/ubinstall-gtk-users.c index 5cb1ff5..4c302d4 100644 --- a/source/ubinstall-gtk-users.c +++ b/source/ubinstall-gtk-users.c @@ -34,19 +34,10 @@ int yon_users_save(main_window *widgets){ if (!main_config.configure_mode){ int users_size; - config_str users = yon_config_get_all_by_key(USERADD_parameter_search,&users_size); - char *parameter = yon_char_parsed_to_string(users,users_size," "); - yon_char_parsed_free(users,users_size); - - int size; - config_str parameters = yon_config_get_save_parameters_by_key(&size,autologin_parameter,root_password_parameter,NULL); - if (parameters){ - char *command_parameters = yon_char_parsed_to_string(parameters,size," -- "); - char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters," ",parameter,NULL); - if (!system(yon_debug_output("%s\n",command))){} - free(command); - yon_char_parsed_free(parameters,size); - } + config_str users = yon_config_get_all_keys_by_key(USERADD_parameter_search,&users_size); + yon_char_parsed_add_or_create_if_exists(users,&users_size,root_password_parameter); + yon_char_parsed_add_or_create_if_exists(users,&users_size,autologin_parameter); + yon_config_save_list_simple(users,users_size,main_config.config_load_path); } return 1; } @@ -143,6 +134,13 @@ yon_user_struct *yon_user_struct_new(){ } void yon_user_init(main_window *widgets){ + if (!main_config.configure_mode){ + int size = 0; + config_str users = yon_config_get_all_by_key(USERADD_parameter_search,&size); + yon_config_remove_by_list(users,size); + yon_config_update_by_args(autologin_parameter,root_password_parameter,NULL); + yon_config_load_config(YON_CONFIG_CUSTOM,ubconfig_load_command(main_config.config_load_path),USERADD_parameter_all,NULL); + } gtk_combo_box_text_remove_all(GTK_COMBO_BOX_TEXT(widgets->UserRootPasswordCombo)); gtk_combo_box_text_append(GTK_COMBO_BOX_TEXT(widgets->UserRootPasswordCombo),NULL,DEFAULT_LABEL); gtk_combo_box_text_append(GTK_COMBO_BOX_TEXT(widgets->UserRootPasswordCombo),NULL,SET_PASSWORD_LABEL); @@ -189,6 +187,7 @@ void yon_user_init(main_window *widgets){ int parsed_size; char *parameter = yon_char_new(users[i]); char *parameter_name = yon_char_divide_search(parameter,"=",-1); + if (yon_config_get_status(parameter_name)<-1) continue; char *key = yon_config_parameter_get_key(parameter_name); char *login = yon_config_parameter_get_key(strstr(key,"USERADD[")); yon_char_remove_brackets(login); diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index c6bc354..d0b5a39 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -100,22 +100,6 @@ void yon_on_about(GtkWidget *, main_window *){ //functions -// //functions -// void yon_encryption_type_setup(GtkComboBoxText *target){ -// int size; -// config_str enc_types = yon_resource_open_file(encryptions_path,&size); -// for (int i=0;iDocumentationMenuItem = yon_ubl_menu_item_documentation_new(DOCUMENTATION_LABEL); widgets->AboutMenuItem = yon_ubl_menu_item_about_new(ABOUT_LABEL); - widgets->LoadGlobalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"LoadGlobalConfigurationMenuItem"); widgets->LoadLocalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"LoadLocalConfigurationMenuItem"); widgets->LoadExternalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"LoadExternalConfigurationMenuItem"); @@ -356,7 +340,6 @@ void yon_main_window_create(main_window *widgets){ widgets->StartScenarioButton=yon_gtk_builder_get_widget(builder,"StartScenarioButton"); widgets->SourceButton=yon_gtk_builder_get_widget(builder,"SourceButton"); - // widgets->SkipInstallationButton=yon_gtk_builder_get_widget(builder,"SkipInstallationButton"); widgets->InstallationRadio=yon_gtk_builder_get_widget(builder,"InstallationRadio"); widgets->InstallationNearRadio=yon_gtk_builder_get_widget(builder,"InstallationNearRadio"); @@ -469,7 +452,6 @@ void yon_main_window_create(main_window *widgets){ widgets->InstallerCountryList=GTK_LIST_STORE(gtk_builder_get_object(builder,"InstallerCountryList")); widgets->InstallerCountryFilter=GTK_TREE_MODEL(gtk_builder_get_object(builder,"InstallerCountryFilter")); widgets->InstallerLanguageList=GTK_LIST_STORE(gtk_builder_get_object(builder,"InstallerLanguageList")); - // widgets->LanguageCombo=yon_gtk_builder_get_widget(builder,"LanguageCombo"); widgets->RegionMapBox=yon_gtk_builder_get_widget(builder,"RegionMapBox"); widgets->RegionMapTarget=NULL; widgets->RegionCombo=yon_gtk_builder_get_widget(builder,"RegionCombo"); @@ -563,7 +545,6 @@ void yon_main_window_create(main_window *widgets){ widgets->PacmanSoftwareChosenList = GTK_LIST_STORE(gtk_builder_get_object(builder,"PacmanSoftwareChosenList")); widgets->PacmanSoftwareChosenCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"PacmanSoftwareChosenCell")); - // widgets->StartupImage = yon_gtk_builder_get_widget(builder,"StartupImage"); widgets->StartupServicesTree = yon_gtk_builder_get_widget(builder,"StartupServicesTree"); widgets->StartupServicesAddButton = yon_gtk_builder_get_widget(builder,"StartupServicesAddButton"); widgets->StartupServicesEditButton = yon_gtk_builder_get_widget(builder,"StartupServicesEditButton"); @@ -578,12 +559,10 @@ void yon_main_window_create(main_window *widgets){ widgets->StartupAppsChosenCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"StartupAppsChosenCell")); widgets->StartupAppsList = GTK_LIST_STORE(gtk_builder_get_object(builder,"StartupAppsList")); - // widgets->BootloaderImage = yon_gtk_builder_get_widget(builder,"BootloaderImage"); widgets->BootloadTimerSwitch = yon_gtk_builder_get_widget(builder,"BootloadTimerSwitch"); widgets->BootloadTimerSpin = yon_gtk_builder_get_widget(builder,"BootloadTimerSpin"); widgets->BootloadDefaultOSEntry = yon_gtk_builder_get_widget(builder,"BootloadDefaultOSEntry"); widgets->BootloadDefaulOSButton = yon_gtk_builder_get_widget(builder,"BootloadDefaulOSButton"); - // widgets->BootloadNoPasswordSwitch = yon_gtk_builder_get_widget(builder,"BootloadNoPasswordSwitch"); widgets->BootloadUserTree = yon_gtk_builder_get_widget(builder,"BootloadUserTree"); widgets->BootloadUserAddButton = yon_gtk_builder_get_widget(builder,"BootloadUserAddButton"); widgets->BootloadUserEditButton = yon_gtk_builder_get_widget(builder,"BootloadUserEditButton"); @@ -591,7 +570,6 @@ void yon_main_window_create(main_window *widgets){ widgets->BootloadUserRemoveButton = yon_gtk_builder_get_widget(builder,"BootloadUserRemoveButton"); widgets->BootloadUsersList = GTK_LIST_STORE(gtk_builder_get_object(builder,"BootloadUsersList")); - // widgets->NetworkImage = yon_gtk_builder_get_widget(builder,"NetworkImage"); widgets->NetworkDomainSwitch = yon_gtk_builder_get_widget(builder,"NetworkDomainSwitch"); widgets->NetworkDomainNameEntry = yon_gtk_builder_get_widget(builder,"NetworkDomainNameEntry"); widgets->NetworkDomainAdminEntry = yon_gtk_builder_get_widget(builder,"NetworkDomainAdminEntry"); @@ -639,7 +617,6 @@ void yon_main_window_create(main_window *widgets){ { g_signal_connect(G_OBJECT(widgets->LicenseAgreeRadio),"toggled",G_CALLBACK(yon_gtk_widget_set_sensitive_from_toggle_button),widgets->NextButton); - g_signal_connect(G_OBJECT(widgets->LoadGlobalConfigurationMenuItem),"activate",G_CALLBACK(on_config_global_load),widgets); g_signal_connect(G_OBJECT(widgets->LoadLocalConfigurationMenuItem),"activate",G_CALLBACK(on_config_local_load),widgets); g_signal_connect(G_OBJECT(widgets->LoadExternalConfigurationMenuItem),"activate",G_CALLBACK(on_config_custom_load),widgets); @@ -663,7 +640,6 @@ void yon_main_window_create(main_window *widgets){ g_signal_connect(G_OBJECT(widgets->GrubInstallUpdateGpartedButton),"clicked",G_CALLBACK(on_gparted_update),widgets); g_signal_connect(G_OBJECT(widgets->AdvancedUpdateGpartedButton),"clicked",G_CALLBACK(on_gparted_update),widgets); - // g_signal_connect(G_OBJECT(widgets->MainWindow),"check-resize",G_CALLBACK(on_region_resized),widgets); g_signal_connect(G_OBJECT(widgets->NextButton),"clicked",G_CALLBACK(on_page_next_clicked),widgets); g_signal_connect(G_OBJECT(widgets->BackButton),"clicked",G_CALLBACK(on_page_prev_clicked),widgets); @@ -702,15 +678,9 @@ void yon_main_window_create(main_window *widgets){ g_signal_connect(G_OBJECT(widgets->UserdataDevicesTree),"cursor-changed",G_CALLBACK(on_device_selection_changed),widgets); g_signal_connect(G_OBJECT(widgets->AdditionalComponentsUncheckAllCheck),"toggled",G_CALLBACK(on_software_uncheck_all),widgets); - // g_signal_connect(G_OBJECT(gtk_spin_button_get_adjustment(GTK_SPIN_BUTTON(widgets->NextInstallationSizeSpin))),"value-changed",G_CALLBACK(yon_size_changed),widgets); g_signal_connect(G_OBJECT(widgets->NextInstallationSizeSpin),"value-changed",G_CALLBACK(yon_size_changed),widgets); g_signal_connect(G_OBJECT(widgets->UserdataFormatSizeSpin),"value-changed",G_CALLBACK(yon_size_changed),widgets); g_signal_connect(G_OBJECT(widgets->OSFormatSizeSpin),"value-changed",G_CALLBACK(yon_size_changed),widgets); - // g_signal_connect(G_OBJECT(widgets->SamePlacePartTree),"cursor-changed",G_CALLBACK(on_partition_changed),widgets); - // g_signal_connect(G_OBJECT(widgets->NextInstallationSysSectionTree),"cursor-changed",G_CALLBACK(on_partition_changed),widgets); - // g_signal_connect(G_OBJECT(widgets->NextInstallationSizeTypeSpin),"changed",G_CALLBACK(on_partition_size_changed),widgets); - // g_signal_connect(G_OBJECT(widgets->OSFormatSizeCombo),"changed",G_CALLBACK(on_partition_size_changed),widgets); - // g_signal_connect(G_OBJECT(widgets->UserdataFormatSizeCombo),"changed",G_CALLBACK(on_partition_size_changed),widgets); g_signal_connect(G_OBJECT(widgets->UserRootPasswordCombo),"changed",G_CALLBACK(yon_gtk_widget_set_sensitive_from_combo_box),widgets->UserRootPasswordEntry); g_signal_connect(G_OBJECT(widgets->UserRootPasswordCombo),"changed",G_CALLBACK(yon_gtk_widget_set_sensitive_from_combo_box),widgets->UserRootPasswordButton); @@ -720,7 +690,6 @@ void yon_main_window_create(main_window *widgets){ g_signal_connect(G_OBJECT(widgets->LanguagesTree),"cursor-changed",G_CALLBACK(on_locale_changed),widgets); g_signal_connect(G_OBJECT(widgets->CountryLanguagesTree),"row-activated",G_CALLBACK(on_installer_language_changed),widgets); - // g_signal_connect(G_OBJECT(widgets->LanguageCombo),"changed",G_CALLBACK(on_locale_changed),widgets); g_signal_connect(G_OBJECT(widgets->StartupServicesTree),"cursor-changed",G_CALLBACK(on_startup_services_selection_changed),widgets); g_signal_connect(G_OBJECT(widgets->StartupServicesAddButton),"clicked",G_CALLBACK(on_startup_service_add),widgets); @@ -761,9 +730,6 @@ void yon_main_window_create(main_window *widgets){ g_signal_connect(G_OBJECT(widgets->BootloadUserRemoveButton),"clicked",G_CALLBACK(on_bootloader_user_remove),widgets); g_signal_connect(G_OBJECT(widgets->BootloadTimerSwitch),"state-set",G_CALLBACK(yon_gtk_widget_set_sensitive_from_switch),widgets->BootloadTimerSpin); - // g_signal_connect(G_OBJECT(widgets->BootloadNoPasswordSwitch),"state-set",G_CALLBACK(yon_gtk_widget_set_sensitive_from_switch_inversed),widgets->BootloadUserRemoveButton); - // g_signal_connect(G_OBJECT(widgets->BootloadNoPasswordSwitch),"state-set",G_CALLBACK(yon_gtk_widget_set_sensitive_from_switch_inversed),widgets->BootloadUserAddButton); - // g_signal_connect(G_OBJECT(widgets->BootloadNoPasswordSwitch),"state-set",G_CALLBACK(yon_gtk_widget_set_sensitive_from_switch_inversed),widgets->BootloadUserTree); g_signal_connect(G_OBJECT(widgets->NetworkDomainSwitch),"state-set",G_CALLBACK(yon_gtk_widget_set_sensitive_from_switch),widgets->NetworkDomainNameEntry); g_signal_connect(G_OBJECT(widgets->NetworkDomainSwitch),"state-set",G_CALLBACK(yon_gtk_widget_set_sensitive_from_switch),widgets->NetworkDomainAdminEntry); @@ -897,23 +863,11 @@ void yon_main_window_create(main_window *widgets){ g_thread_new("Partitions_thread",(GThreadFunc)yon_partitions_list_load,widgets); { - if (main_config.lock_load_global == 1){ - gtk_widget_set_sensitive(widgets->LoadGlobalConfigurationMenuItem,0); - } - gtk_window_set_title(GTK_WINDOW(widgets->MainWindow),TITLE_LABEL); gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"headerTopic")),TITLE_LABEL); gtk_window_set_icon_name(GTK_WINDOW(widgets->MainWindow),icon_path); } gtk_builder_connect_signals(builder,NULL); - if (!yon_char_is_empty(config(AUTOINSTALL_TYPE_INSTALL))){ - gtk_widget_show(widgets->StartScenarioButton); - if (main_config.autoinstall){ - gtk_button_clicked(GTK_BUTTON(widgets->StartScenarioButton)); - } - } else { - gtk_widget_hide(widgets->StartScenarioButton); - } if (getuid()){ gtk_menu_item_activate(GTK_MENU_ITEM(widgets->ConfigurationModeMenuItem)); if (yon_char_is_empty(main_config.config_save_path)){ @@ -922,15 +876,7 @@ void yon_main_window_create(main_window *widgets){ } if (main_config.force_ini){ while(gtk_events_pending()) gtk_main_iteration(); - if (yon_configuration_path_check(main_config.config_save_path)){ - GList *box = gtk_container_get_children(GTK_CONTAINER(widgets->ConfigurationModeMenuItem)); - GList *children = gtk_container_get_children(GTK_CONTAINER(box->data)); - - GtkWidget *Check = GTK_WIDGET(g_list_nth_data(children,1)); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(Check),1); - yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),CONFIGURATION_MODE_STATUS_LABEL,0,BACKGROUND_IMAGE_INFO_TYPE); - yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox2),CONFIG_PATH_LABEL(main_config.config_save_path),0,BACKGROUND_IMAGE_INFO_TYPE); - } else { + if (!yon_configuration_path_check(main_config.config_save_path)){ exit (1); } } @@ -945,9 +891,6 @@ void yon_main_window_create(main_window *widgets){ main_config.part_size_default = default_part_size[0]; } } - // if (main_config.autoinstall){ - - // } } gboolean yon_maximize_start(main_window *widgets){ @@ -985,7 +928,6 @@ main_window *yon_main_window_complete(){ int main(int argc, char *argv[]){ main_config.argv=argv; main_config.argc = argc; - // __attribute__((unused)) char *locale = setlocale(LC_ALL, "en_US.UTF-8"); config_str unfound = NULL; int size=0; opterr=0; @@ -1027,7 +969,7 @@ int main(int argc, char *argv[]){ { widgets = yon_main_window_complete(); - on_config_global_load(NULL,widgets); + on_config_local_load(NULL,widgets); } main_config.launch_arguments=yon_char_parsed_copy(argv,argc); diff --git a/source/ubinstall-gtk.h b/source/ubinstall-gtk.h index 172bdf3..b94f9d9 100755 --- a/source/ubinstall-gtk.h +++ b/source/ubinstall-gtk.h @@ -294,6 +294,7 @@ layout && /description:/ {\ #define get_devices_command "ubinstall show --lsdevices" #define get_parts_for_device_command "ubinstall show --lsparts" #define get_modules_command "ubinstall show --lsmodules" +#define ubconfig_file_create_pkexec(target) yon_char_unite("pkexec ubconfig --target \"",target,"\" create",NULL) #define config_get_command(target) yon_char_unite("ubconfig -ea --conarg --source ", target, " get [autoinstall] AUTOINSTALL[*] -- get [locale] LANG", NULL) @@ -492,7 +493,6 @@ typedef struct GtkListStore *LayoutsList; GtkListStore *PartitionsList; - GtkWidget *LoadGlobalConfigurationMenuItem; GtkWidget *LoadLocalConfigurationMenuItem; GtkWidget *LoadExternalConfigurationMenuItem; @@ -1272,7 +1272,6 @@ void on_config_local_save(GtkWidget *, main_window *widgets); void on_config_global_local_save(GtkWidget *, main_window *widgets); void on_config_custom_load_last(GtkWidget *, main_window *widgets); void on_config_custom_load(GtkWidget *, main_window *); -void on_config_global_load(GtkWidget *, main_window *); void on_config_local_load(GtkWidget *, main_window *widgets); void yon_config_save_proceed(char *path, YON_CONFIG_TYPE type); void on_page_next_clicked(GtkWidget *, main_window *widgets); @@ -1280,7 +1279,7 @@ void on_page_prev_clicked(GtkWidget *, main_window *widgets); void yon_load_proceed(YON_CONFIG_TYPE type); void _yon_saving_threaded(char *final_command); enum YON_PAGES yon_page_get_next(main_window *widgets, enum YON_PAGES page); -enum YON_PAGES yon_page_get_prev(enum YON_PAGES page); +enum YON_PAGES yon_page_get_prev(main_window *widgets,enum YON_PAGES page); enum YON_PAGES yon_sections_get_next_page(main_window *widgets); enum YON_PAGES yon_recovery_get_next(main_window *widgets); enum YON_PAGES yon_page_get_current(GtkNotebook *target); @@ -1326,22 +1325,22 @@ gboolean yon_on_revealer_switched(yon_menu_window *window); gboolean on_menu_clicked(GtkWidget *, GdkEventButton *event, yon_menu_window *window); yon_menu_window *yon_menu_window_open(GtkWidget *, main_window *widgets); void on_submenu_open(GtkWidget *, yon_menu_item *item); -void yon_kernel_setup(main_window *widgets); +void yon_kernel_init(main_window *widgets); void yon_kernel_row_setup(kernel_row *row, char *name, char *modules, char *package, char *tags, char *description); void yon_kernel_row_setup_tags(kernel_row *row, char *tags); int yon_tag_add(GtkBox *target, char *tag_label, char *tag_style, char *icon_name); kernel_row *yon_kernel_row_new(); void yon_kernel_resize(main_window *widgets); -void yon_kernel_addon_setup(main_window *widgets); +void yon_kernel_addon_init(main_window *widgets); void yon_kernel_addon_resize(main_window *widgets); -void yon_startup_services_setup(main_window *widgets); +void yon_startup_services_init(main_window *widgets); void on_srartup_services_toggled(GtkCellRenderer *, char *path, main_window *widgets); void on_startup_service_edit(GtkWidget *, main_window *widgets); void on_startup_service_add(GtkWidget *, main_window *widgets); startup_service_window *yon_startup_service_window_new(); void on_startup_edit_accept(GtkWidget *, main_window *widgets); void on_startup_add_accept(GtkWidget *, main_window *widgets); -void yon_startup_services_setup(main_window *widgets); +void yon_startup_services_init(main_window *widgets); void on_startup_services_remove(GtkWidget *self, main_window *widgets); void on_startup_services_selection_changed(GtkWidget *, main_window *widgets); void on_pacman_software_all_toggled(GtkWidget *, char *path, main_window *widgets); @@ -1493,7 +1492,7 @@ gboolean on_install_slider_slide(main_window *widgets); void on_srartup_apps_toggled(GtkWidget *, char *path, main_window *widgets); void on_startup_apps_selection_changed(GtkWidget *, main_window *widgets); void on_startup_apps_remove(GtkWidget *self, main_window *widgets); -void yon_startup_apps_setup(main_window *widgets); +void yon_startup_apps_init(main_window *widgets); void on_startup_app_add_accept(GtkWidget *self, main_window *widgets); void on_startup_app_edit_accept(GtkWidget *self, main_window *widgets); startup_service_window *yon_startup_app_window_new(); @@ -1579,4 +1578,5 @@ void yon_gtk_widget_set_translation(GtkWidget *target); void on_bootloader_user_edit(GtkWidget *, main_window *widgets); void on_bootloader_admin_toggled(GtkWidget *, char *path, main_window *widgets); void on_bootloader_user_remove(GtkWidget *, main_window *widgets); -void on_software_uncheck_all(GtkWidget *, main_window *widgets); \ No newline at end of file +void on_software_uncheck_all(GtkWidget *, main_window *widgets); +gboolean on_kernel_enabled_toggled(GtkWidget *self, GdkEventButton *, kernel_row *row); \ No newline at end of file diff --git a/source/ubl-strings.h b/source/ubl-strings.h index 702fa7f..4f24f0c 100644 --- a/source/ubl-strings.h +++ b/source/ubl-strings.h @@ -262,7 +262,7 @@ NULL) #define SYSTEM_SECTION_LABEL _("System") #define PACKAGES_SECTION_LABEL _("Installing software by groups") #define KERNEL_LABEL _("Kernel") -#define KERNEL_ADDON_LABEL _("Kernel addons") +#define KERNEL_ADDON_LABEL _("Additional kernel components") #define SOFTWARE_LABEL _("Installing Modules") #define PACMAN_SOFTWARE_LABEL _("Installing Packages") #define REGION_ICON_LABEL _("Location") @@ -303,7 +303,7 @@ NULL) // #define _LABEL _("Chosen size:") // #define _LABEL _("Overall size:") // #define _LABEL _("Select your language:") -// #define _LABEL _("Selecting additional system kernel components") +// #define _LABEL _("Additional kernel components") // #define _LABEL _("Package:") // #define _LABEL _("Module:") // #define _LABEL _("New section at") diff --git a/ubinstall-gtk-service-window.glade b/ubinstall-gtk-service-window.glade index 0f7923d..c311996 100644 --- a/ubinstall-gtk-service-window.glade +++ b/ubinstall-gtk-service-window.glade @@ -68,7 +68,7 @@ - + True True @@ -104,7 +104,7 @@ - + True True diff --git a/ubinstall-gtk.glade b/ubinstall-gtk.glade index 75bacc4..0af1011 100644 --- a/ubinstall-gtk.glade +++ b/ubinstall-gtk.glade @@ -213,6 +213,10 @@ + + + + @@ -617,16 +621,6 @@ True False False - - - True - False - Load global configuration - - - True @@ -3010,7 +3004,7 @@ Select a different installation source. True False - Selecting additional system kernel components + Additional kernel components True 0 @@ -3530,6 +3524,7 @@ Select a different installation source. True True False + com.ublinux.libublsettingsui-gtk3.zoom-symbolic Search @@ -3618,6 +3613,7 @@ Select a different installation source. True PacmanSoftwareAllList 0 + both none @@ -3670,7 +3666,10 @@ Select a different installation source. Description - + + word-char + 250 + 3 @@ -3734,6 +3733,7 @@ Select a different installation source. True PacmanSoftwareChosenList 0 + both none @@ -3786,7 +3786,10 @@ Select a different installation source. Description - + + word-char + 250 + 3 @@ -5659,22 +5662,22 @@ Select a different installation source. - Unit + Service - 1 + 2 - Service + Unit - 2 + 1 @@ -7118,6 +7121,7 @@ Select a different installation source. 0 + 4 3 0 @@ -11338,7 +11342,7 @@ separately into the selected partition. True False - Install the GRUB bootloader + Installing the GRUB bootloader into the MBR or EFI partition True 0