master #300

Merged
asmeron merged 24 commits from YanTheKaller/ubinstall-gtk:master into master 1 month ago

@ -945,10 +945,6 @@ msgstr ""
msgid "Kernel" msgid "Kernel"
msgstr "" msgstr ""
#: source/ubl-strings.h:274
msgid "Kernel addons"
msgstr ""
#: source/ubl-strings.h:275 #: source/ubl-strings.h:275
msgid "Installing Modules" msgid "Installing Modules"
msgstr "" msgstr ""
@ -1018,7 +1014,7 @@ msgid "Select your language:"
msgstr "" msgstr ""
#: source/ubl-strings.h:293 #: source/ubl-strings.h:293
msgid "Selecting additional system kernel components" msgid "Additional kernel components"
msgstr "" msgstr ""
#: source/ubl-strings.h:294 #: source/ubl-strings.h:294

@ -965,10 +965,6 @@ msgstr "Установка программ по группам"
msgid "Kernel" msgid "Kernel"
msgstr "Ядро" msgstr "Ядро"
#: source/ubl-strings.h:274
msgid "Kernel addons"
msgstr "Дополнительные компоненты ядра"
#: source/ubl-strings.h:275 #: source/ubl-strings.h:275
msgid "Installing Modules" msgid "Installing Modules"
msgstr "Установка модулей" msgstr "Установка модулей"
@ -991,7 +987,7 @@ msgstr "Загрузчик"
#: source/ubl-strings.h:281 #: source/ubl-strings.h:281
msgid "Network" msgid "Network"
msgstr "Настройка сетевых интерфейсов" msgstr "Сеть"
#: source/ubl-strings.h:282 #: source/ubl-strings.h:282
msgid "Enable VNC server" msgid "Enable VNC server"
@ -1038,8 +1034,8 @@ msgid "Select your language:"
msgstr "Выберите язык:" msgstr "Выберите язык:"
#: source/ubl-strings.h:293 #: source/ubl-strings.h:293
msgid "Selecting additional system kernel components" msgid "Additional kernel components"
msgstr "Выбор дополнительных компонентов ядра системы" msgstr "Дополнительные компоненты ядра"
#: source/ubl-strings.h:294 #: source/ubl-strings.h:294
msgid "<i><b>Package:</b></i>" msgid "<i><b>Package:</b></i>"
@ -1523,7 +1519,7 @@ msgid ""
"Selecting kernels for installation in the system and selecting the default kernel. Internet access required" "Selecting kernels for installation in the system and selecting the default kernel. Internet access required"
msgstr "" msgstr ""
"Выбор ядер для установки в систему и выбор ядра по умолчанию. Требуется " "Выбор ядер для установки в систему и выбор ядра по умолчанию. Требуется "
"доступ В Интернет." "доступ в Интернет."
#: source/ubl-strings.h:414 #: source/ubl-strings.h:414
msgid "" msgid ""

@ -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); 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); yon_config_register(GRUB_PASSWORD_parameter(username),GRUB_PASSWORD_parameter_command(username),password);
if (is_admin){ if (is_admin){
yon_config_append_element(GRUB_SUPERUSERS_parameter,GRUB_SUPERUSERS_parameter_command,username); yon_config_append_element(GRUB_SUPERUSERS_parameter,username,",");
} else { } else {
yon_config_remove_by_key(GRUB_SUPERUSERS_parameter); yon_config_remove_by_key(GRUB_SUPERUSERS_parameter);
} }
} }
if (!main_config.configure_mode){ if (!main_config.configure_mode){
int user_size=0; 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 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(&param_size,users,user_size); yon_char_parsed_add_or_create_if_exists(users,&user_size,GRUB_SUPERUSERS_parameter);
yon_char_parsed_free(users,user_size); yon_char_parsed_add_or_create_if_exists(users,&user_size,GRUB_TIMEOUT_parameter);
char *user_string = yon_char_parsed_to_string(user_parameters,param_size," "); yon_config_save_list_simple(users, user_size,main_config.config_load_path);
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_bootloader_interface_update(widgets); yon_bootloader_interface_update(widgets);
@ -443,6 +433,8 @@ void yon_bootloader_interface_update(main_window *widgets){
for (int i=0;i<size;i++){ for (int i=0;i<size;i++){
char *value = yon_char_new(users[i]); char *value = yon_char_new(users[i]);
char *parameter = yon_char_divide_search(value,"=",-1); char *parameter = yon_char_divide_search(value,"=",-1);
if (yon_config_get_status(parameter)<-1) continue;
char *key = yon_config_parameter_get_key(parameter); char *key = yon_config_parameter_get_key(parameter);
GtkTreeIter iter; GtkTreeIter iter;
@ -453,6 +445,13 @@ void yon_bootloader_interface_update(main_window *widgets){
} }
void yon_bootloader_init(main_window *widgets){ void yon_bootloader_init(main_window *widgets){
if (!main_config.configure_mode){
int size = 0;
config_str users = yon_config_get_all_by_key(GRUB_PASSWORD_parameter_search,&size);
yon_config_remove_by_list(users,size);
yon_config_update_by_args(GRUB_TIMEOUT_parameter,GRUB_SUPERUSERS_parameter,NULL);
yon_config_load_config(YON_CONFIG_CUSTOM,ubconfig_load_command(main_config.config_load_path),GRUB_PASSWORD_parameter_command_all,NULL);
}
gtk_list_store_clear(widgets->BootloadUsersList); gtk_list_store_clear(widgets->BootloadUsersList);
char *timeout = config(GRUB_TIMEOUT_parameter); char *timeout = config(GRUB_TIMEOUT_parameter);
char *os = config(GRUB_DEFAULT_parameter); char *os = config(GRUB_DEFAULT_parameter);
@ -483,6 +482,7 @@ void yon_bootloader_init(main_window *widgets){
for (int i=0;i<size;i++){ for (int i=0;i<size;i++){
char *parameter = yon_char_new(users[i]); char *parameter = yon_char_new(users[i]);
char *parameter_name = yon_char_divide_search(parameter,"=",-1); 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 *key = yon_config_parameter_get_key(parameter_name);
char *key_sub = key+yon_char_find_last(key,'['); char *key_sub = key+yon_char_find_last(key,'[');
char *subkey = yon_config_parameter_get_key(key_sub); char *subkey = yon_config_parameter_get_key(key_sub);

@ -16,7 +16,7 @@ int yon_kernel_save(main_window *widgets){
kernel_row *row = g_object_get_data(G_OBJECT(iter->data),"kernel_row"); kernel_row *row = g_object_get_data(G_OBJECT(iter->data),"kernel_row");
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck))){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck))){
char *append_str = yon_char_replace(row->modules," ",","); 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); free(append_str);
active_size++; active_size++;
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->EnableRadio))){ 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){ if (!main_config.configure_mode){
int size; yon_config_save_args_simple(main_config.config_load_path,packages_parameter, KERNEL_BOOT_parameter,NULL);
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);
}
} }
return 1; return 1;
@ -59,7 +51,7 @@ int yon_kernel_addon_save(main_window *widgets){
for(GList *iter = list;iter;iter = iter->next){ for(GList *iter = list;iter;iter = iter->next){
kernel_addon_row *row = g_object_get_data(G_OBJECT(iter->data),"kernel_row"); 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))){ 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 { } else {
char *append_str = yon_char_replace(row->modules," ",","); char *append_str = yon_char_replace(row->modules," ",",");
yon_config_remove_elements(packages_parameter,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){ if (!main_config.configure_mode){
int size; 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){ if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,size," -- "); char *command_parameters = yon_char_parsed_to_string(parameters,size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL); 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){ void yon_os_components_init(main_window *widgets){
if (!main_config.configure_mode){
yon_config_update_by_args(modules_parameter,NULL);
}
int size = 0; int size = 0;
GList *list = gtk_container_get_children(GTK_CONTAINER(widgets->OSSoftwareListBox)); GList *list = gtk_container_get_children(GTK_CONTAINER(widgets->OSSoftwareListBox));
GList *iter; GList *iter;
@ -316,7 +311,10 @@ void on_software_uncheck_all(GtkWidget *, main_window *widgets){
GList *iter; GList *iter;
for(iter = list;iter;iter=iter->next){ for(iter = list;iter;iter=iter->next){
os_row *row = g_object_get_data(iter->data,"kernel_row"); 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; } break;
} }
@ -339,7 +337,7 @@ int yon_software_save(main_window *widgets){
int status = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck)); int status = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck));
if (status){ if (status){
if (!yon_char_check_element(config_val,target,",")){ if (!yon_char_check_element(config_val,target,",")){
yon_config_append_element(packages_parameter,target,","); yon_config_append_elements(packages_parameter,target,",");
} }
} else{ } else{
char *append_str = yon_char_replace(target," ",","); 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))){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck))){
long cur_size = yon_packages_get_installed_size(YON_PACKAGES_ALL,row->name); long cur_size = yon_packages_get_installed_size(YON_PACKAGES_ALL,row->name);
pacman_size += cur_size; 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 { } else {
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(row->InstallCheck),0); 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;i<main_config.modules_size;i++){
int parsed_size=0;
config_str parsed = yon_char_parse(main_config.modules[i],&parsed_size,";");
yon_char_parsed_add_or_create_if_exists(final,&final_size,parsed[1]);
yon_char_parsed_free(parsed,parsed_size);
}
modules_param = yon_char_parsed_to_string(final,final_size,",");
}
if (yon_char_check_elements(modules_param,row_input->name,",")){
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; return G_SOURCE_REMOVE;
} }
void yon_software_init(main_window *widgets){ 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 *list = gtk_container_get_children(GTK_CONTAINER(widgets->AdditionalComponentsList));
GList *iter; GList *iter;
for (iter=list;iter;iter=iter->next){ 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){ 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); gtk_list_store_clear(widgets->PacmanSoftwareChosenList);
char *pacman_packages = config(packages_parameter); 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); 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); 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_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(version))free(version);
if (!yon_char_is_empty(description)) free(description); 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){ void on_pacman_search_enter(GtkEntry *self, main_window *widgets){
on_pacman_icon_press(self,GTK_ENTRY_ICON_SECONDARY,NULL,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){ 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); gtk_list_store_clear(widgets->PacmanSoftwareAllList);
const char *find_package = gtk_entry_get_text(self); const char *find_package = gtk_entry_get_text(self);
if (strlen(find_package)<2) return;
struct pacman_struct *pacman = new (struct pacman_struct); struct pacman_struct *pacman = new (struct pacman_struct);
pacman->widgets=widgets; pacman->widgets=widgets;
pacman->find_package=find_package; pacman->find_package=find_package;

@ -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->action_text = homedir_create?CREATE_CONFIG_DIALOG_LABEL_HOMEDIR:CREATE_CONFIG_DIALOG_LABEL;
data->title = WARNING_TITLE_LABEL; data->title = WARNING_TITLE_LABEL;
if (yon_confirmation_dialog_call(NULL,data)==GTK_RESPONSE_ACCEPT){ 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)); yon_launch(ubconfig_file_create(full_path));
struct passwd *user = getpwnam(yon_ubl_root_user_get()); struct passwd *user = getpwnam(yon_ubl_root_user_get());
if (chown(full_path,user->pw_uid,user->pw_gid)){}; if (chown(full_path,user->pw_uid,user->pw_gid)){};
}
} else { } else {
return 0; return 0;

@ -57,15 +57,7 @@ int yon_grub_update_save(main_window *widgets){
yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_update"); yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_update");
if (!main_config.configure_mode){ if (!main_config.configure_mode){
int size; yon_config_save_args_simple(main_config.config_load_path,device_parameter,part_parameter,AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL,NULL);
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);
}
} }
return 1; return 1;
} }

@ -30,15 +30,7 @@ int yon_install_common_save(main_window *widgets){
} }
if (!main_config.configure_mode){ if (!main_config.configure_mode){
int size; yon_config_save_args_simple(main_config.config_load_path,AUTOINSTALL_TYPE_INSTALL,device_parameter,part_label_parameter,part_fs_type_parameter,NULL);
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);
}
} }
return 1; return 1;
} }
@ -112,15 +104,7 @@ int yon_install_separate_save(main_window *widgets){
} }
if (!main_config.configure_mode){ if (!main_config.configure_mode){
int 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);
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);
}
} }
return 1; return 1;
} }
@ -170,15 +154,7 @@ int yon_install_same_partition_save(main_window *widgets){
yon_config_remove_by_key(part_fs_type_parameter); yon_config_remove_by_key(part_fs_type_parameter);
} }
if (!main_config.configure_mode){ if (!main_config.configure_mode){
int 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);
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);
}
} }
return 1; 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){ 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); yon_devices_setup(widgets);
GtkWidget *device_tree = NULL; GtkWidget *device_tree = NULL;

@ -3,11 +3,21 @@
void on_kernel_install_enabled(GtkWidget *, kernel_row *row){ void on_kernel_install_enabled(GtkWidget *, kernel_row *row){
int active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck)); int active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck));
gtk_widget_set_sensitive(row->EnableRadio,active); 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))&&gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->EnableRadio))){
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(main_config.kernel_unchosen_radio),1); 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 *yon_kernel_row_new(){
kernel_row *row = new(kernel_row); kernel_row *row = new(kernel_row);
GtkBuilder *builder = gtk_builder_new_from_resource(glade_path_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; row->package=NULL;
g_signal_connect(G_OBJECT(row->InstallCheck),"toggled",G_CALLBACK(on_kernel_install_enabled),row); 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(); row->row = gtk_list_box_row_new();
gtk_container_add(GTK_CONTAINER(row->row),row->RowBox); 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); 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 *list = gtk_container_get_children(GTK_CONTAINER(widgets->KernelListBox));
GList *iter; GList *iter;
for (iter = list; iter; iter = iter->next){ for (iter = list; iter; iter = iter->next){
@ -225,6 +239,10 @@ void yon_kernel_setup(main_window *widgets){
} else { } else {
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(row->InstallCheck),0); 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)){ if (!yon_char_is_empty(enabled)&&!strcmp(package,enabled)){
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(row->EnableRadio),1); 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); 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 *list = gtk_container_get_children(GTK_CONTAINER(widgets->KernelAddonListBox));
GList *iter; GList *iter;
for (iter = list; iter; iter = iter->next){ for (iter = list; iter; iter = iter->next){
@ -419,6 +441,10 @@ void yon_kernel_addon_setup(main_window *widgets){
} else { } else {
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(row->InstallCheck),0); 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); yon_kernel_addon_resize(widgets);

@ -48,21 +48,16 @@ int yon_keyboard_save(main_window *widgets){
yon_config_remove_by_key(num_lock_boot_parameter); yon_config_remove_by_key(num_lock_boot_parameter);
} }
if (!main_config.configure_mode){ if (!main_config.configure_mode){
int size; yon_config_save_args_simple(main_config.config_load_path,xkbmodel_parameter,num_lock_boot_parameter,NULL);
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);
}
} }
on_options_save(NULL,widgets); on_options_save(NULL,widgets);
return 1; return 1;
} }
void yon_keyboard_init(main_window *widgets){ 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->KeyboardModelCombo),G_CALLBACK(on_model_changed),widgets);
g_signal_handlers_block_by_func(G_OBJECT(widgets->KeyboardDefaultLayoutsSwitch),G_CALLBACK(on_layout_default_toggled),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)); gtk_combo_box_text_remove_all(GTK_COMBO_BOX_TEXT(widgets->KeyboardModelCombo));

@ -273,20 +273,15 @@ int yon_language_save(main_window *widgets){
yon_config_remove_by_key(locale_parameter); yon_config_remove_by_key(locale_parameter);
} }
if (!main_config.configure_mode){ if (!main_config.configure_mode){
int size; yon_config_save_args_simple(main_config.config_load_path,lang_parameter,locale_parameter,NULL);
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);
}
} }
return 1; return 1;
} }
void yon_language_init(main_window *widgets){ 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); yon_language_update(widgets);
} }

@ -187,6 +187,10 @@ int yon_network_save(main_window *widgets){
} else { } else {
yon_config_remove_by_key(DOMAIN_admanger_parameter); 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))){ 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)); hostname = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->HotnameEntry));
} }
if (yon_char_is_empty(hostname)){ 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); yon_ubl_status_highlight_incorrect(widgets->HotnameEntry);
return 0; return 0;
} }
@ -235,6 +239,16 @@ int yon_network_save(main_window *widgets){
yon_config_remove_by_key(hostname_parameter); 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;i<size;i++){
char *parameter = yon_char_divide_search(users[i],"=",-1);
yon_config_remove_by_key(parameter);
free(parameter);
}
}
GList *list = gtk_container_get_children(GTK_CONTAINER(widgets->NetworkConnectionsBox)); GList *list = gtk_container_get_children(GTK_CONTAINER(widgets->NetworkConnectionsBox));
GList *iter; GList *iter;
for (iter=list;iter;iter=iter->next){ for (iter=list;iter;iter=iter->next){
@ -290,26 +304,25 @@ int yon_network_save(main_window *widgets){
} }
} }
if (!main_config.configure_mode){ if (!main_config.configure_mode){
int connect_size; int connect_size=0;
config_str connections = yon_config_get_all_keys_by_key(NETWORK_parameter_search,&connect_size);
config_str connections = yon_config_get_all_by_key(NETWORK_parameter_search,&connect_size); yon_char_parsed_add_or_create_if_exists(connections,&connect_size,DOMAIN_parameter);
char *connections_string = yon_char_parsed_to_string(connections,connect_size," "); yon_char_parsed_add_or_create_if_exists(connections,&connect_size,DOMAIN_admanger_parameter);
yon_char_parsed_free(connections,connect_size); 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);
int size; yon_config_save_list_simple(connections,connect_size,main_config.config_load_path);
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);
}
} }
return 1; return 1;
} }
void yon_network_init(main_window *widgets){ 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 *list = gtk_container_get_children(GTK_CONTAINER(widgets->NetworkConnectionsBox));
GList *iter; GList *iter;
for (iter=list;iter;iter=iter->next){ for (iter=list;iter;iter=iter->next){
@ -392,6 +405,7 @@ void yon_network_init(main_window *widgets){
for (int i=0;i<size;i++){ for (int i=0;i<size;i++){
char *parameter = yon_char_new(parameters[i]); char *parameter = yon_char_new(parameters[i]);
char *parameter_name = yon_char_divide_search(parameter,"=",-1); 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 *key = yon_config_parameter_get_key(parameter_name);
char *key_sub = key+yon_char_find_last(key,'['); char *key_sub = key+yon_char_find_last(key,'[');
char *subkey = yon_config_parameter_get_key(key_sub); char *subkey = yon_config_parameter_get_key(key_sub);

@ -12,14 +12,14 @@ int yon_packages_tab_save(main_window *widgets){
char *package; char *package;
gtk_tree_model_get(GTK_TREE_MODEL(widgets->PackagesList),&subiter,0,&status,1,&package,3,&selectable,-1); gtk_tree_model_get(GTK_TREE_MODEL(widgets->PackagesList),&subiter,0,&status,1,&package,3,&selectable,-1);
if (selectable&&status){ if (selectable&&status){
yon_config_append_element(packages_parameter,package,","); yon_config_append_elements(packages_parameter,package,",");
}else if (selectable&&!status){ }else if (selectable&&!status){
yon_config_remove_elements(packages_parameter,package,","); yon_config_remove_elements(packages_parameter,package,",");
} else { } 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)){ 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); gtk_tree_model_get(GTK_TREE_MODEL(widgets->PackagesList),&packiter,0,&status,1,&package,3,&selectable,-1);
if (status){ if (status){
yon_config_append_element(packages_parameter,package,","); yon_config_append_elements(packages_parameter,package,",");
} else { } else {
yon_config_remove_elements(packages_parameter,package,","); yon_config_remove_elements(packages_parameter,package,",");
} }
@ -28,15 +28,7 @@ int yon_packages_tab_save(main_window *widgets){
} }
} }
if (!main_config.configure_mode){ if (!main_config.configure_mode){
int size; yon_config_save_args_simple(main_config.config_load_path,packages_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);
if (!system(yon_debug_output("%s\n",command))){}
free(command);
yon_char_parsed_free(parameters,size);
}
} }
return 1; return 1;
} }
@ -71,7 +63,28 @@ GtkTreeIter *yon_subcategory_check(GtkTreeStore *target, GtkTreeIter *parent_ite
} }
void yon_packages_tab_init(main_window *widgets){ 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); 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;i<main_config.modules_size;i++){
int parsed_size=0;
config_str parsed = yon_char_parse(main_config.modules[i],&parsed_size,";");
yon_char_parsed_add_or_create_if_exists(final,&final_size,parsed[1]);
yon_char_parsed_free(parsed,parsed_size);
}
modules = yon_char_parsed_to_string(final,final_size,",");
}
int size; int size;
char *config_packages = config(packages_parameter); char *config_packages = config(packages_parameter);
@ -80,14 +93,15 @@ void yon_packages_tab_init(main_window *widgets){
int parsed_size; int parsed_size;
config_str parsed = yon_char_parse(packages[i],&parsed_size,";"); config_str parsed = yon_char_parse(packages[i],&parsed_size,";");
GtkTreeIter *category_iter = yon_category_check(widgets->PackagesList,parsed[0]); GtkTreeIter *category_iter = yon_category_check(widgets->PackagesList,parsed[0]);
char *name_render = yon_char_replace(parsed[2],","," ");
if (category_iter){ if (category_iter){
if (!yon_char_is_empty(parsed[1])){ if (!yon_char_is_empty(parsed[1])){
GtkTreeIter *subcategory_iter = yon_subcategory_check(widgets->PackagesList,category_iter,parsed[1]); GtkTreeIter *subcategory_iter = yon_subcategory_check(widgets->PackagesList,category_iter,parsed[1]);
if (subcategory_iter){ if (subcategory_iter){
GtkTreeIter package_iter; GtkTreeIter package_iter;
gtk_tree_store_append(widgets->PackagesList,&package_iter,subcategory_iter); gtk_tree_store_append(widgets->PackagesList,&package_iter,subcategory_iter);
char *full_string = yon_char_unite("<b>",parsed[2],"</b>\n",_(parsed[3]),NULL); char *full_string = yon_char_unite("<b>",name_render,"</b>\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); 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); free(full_string);
gtk_tree_iter_free(subcategory_iter); gtk_tree_iter_free(subcategory_iter);
} else { } 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_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_set(widgets->PackagesList,&subcatiter,1,parsed[1],2,_(parsed[3]),3,0,-1);
gtk_tree_store_append(widgets->PackagesList,&package_iter,&subcatiter); gtk_tree_store_append(widgets->PackagesList,&package_iter,&subcatiter);
char *full_string = yon_char_unite("<b>",parsed[2],"</b>\n",_(parsed[3]),NULL); char *full_string = yon_char_unite("<b>",name_render,"</b>\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); 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); free(full_string);
} }
} else { } else {
GtkTreeIter package_iter; GtkTreeIter package_iter;
gtk_tree_store_append(widgets->PackagesList,&package_iter,category_iter); gtk_tree_store_append(widgets->PackagesList,&package_iter,category_iter);
char *full_string = yon_char_unite("<b>",parsed[2],"</b>\n",_(parsed[3]),NULL); char *full_string = yon_char_unite("<b>",name_render,"</b>\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); 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); free(full_string);
} }
gtk_tree_iter_free(category_iter); 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_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_set(widgets->PackagesList,&subcategory_iter,1,parsed[1],2,_(parsed[1]),3,0,-1);
gtk_tree_store_append(widgets->PackagesList,&package_iter,&subcategory_iter); gtk_tree_store_append(widgets->PackagesList,&package_iter,&subcategory_iter);
char *full_string = yon_char_unite("<b>",parsed[2],"</b>\n",_(parsed[3]),NULL); char *full_string = yon_char_unite("<b>",name_render,"</b>\n",_(parsed[3]),NULL);
gtk_tree_store_set(widgets->PackagesList,&package_iter,1,parsed[2],2,full_string,3,1,-1); 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); free(full_string);
} else { } else {
GtkTreeIter package_iter; 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_append(widgets->PackagesList,&catiter,NULL);
gtk_tree_store_set(widgets->PackagesList,&catiter,1,parsed[0],2,_(parsed[0]),3,0,-1); 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); gtk_tree_store_append(widgets->PackagesList,&package_iter,&catiter);
char *full_string = yon_char_unite("<b>",parsed[2],"</b>\n",_(parsed[3]),NULL); char *full_string = yon_char_unite("<b>",name_render,"</b>\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); 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); free(full_string);
} }
} }
} }
if (!yon_char_is_empty(modules)) free(modules);
gtk_tree_view_expand_all(GTK_TREE_VIEW(widgets->PackagesTree)); 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; GtkTreeIter iter;
gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(widgets->PackagesList),&iter,path); gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(widgets->PackagesList),&iter,path);
int status; int status;
gtk_tree_model_get(GTK_TREE_MODEL(widgets->PackagesList),&iter,0,&status,-1); int sensitive;
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);
}
} }
void yon_on_packages_activated(GtkWidget *, GtkTreePath* path, GtkTreeViewColumn* , main_window *widgets){ void yon_on_packages_activated(GtkWidget *, GtkTreePath* path, GtkTreeViewColumn* , main_window *widgets){
GtkTreeIter iter; GtkTreeIter iter;
gtk_tree_model_get_iter(GTK_TREE_MODEL(widgets->PackagesList),&iter,path); gtk_tree_model_get_iter(GTK_TREE_MODEL(widgets->PackagesList),&iter,path);
int sensitive;
int status; int status;
gtk_tree_model_get(GTK_TREE_MODEL(widgets->PackagesList),&iter,0,&status,-1); gtk_tree_model_get(GTK_TREE_MODEL(widgets->PackagesList),&iter,0,&status,4,&sensitive,-1);
gtk_tree_store_set(widgets->PackagesList,&iter,0,!status,-1); if (sensitive){
gtk_tree_store_set(widgets->PackagesList,&iter,0,!status,-1);
}
} }

@ -53,7 +53,7 @@ enum YON_PAGES yon_page_get_next(main_window *widgets, enum YON_PAGES page){
return -1; 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){ switch (page){
case YON_PAGE_WELCOME: return YON_PAGE_WELCOME; break; case YON_PAGE_WELCOME: return YON_PAGE_WELCOME; break;
case YON_PAGE_LICENCE: 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; } break;
case YON_PAGE_INSTALLATION_BEGIN: return YON_PAGE_OS_COMPONENTS; 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_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: return YON_PAGE_CONFIG_HUB; break;
case YON_PAGE_KERNEL_ADDON: 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; 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; break;
case YON_PAGE_SECTIONS: case YON_PAGE_SECTIONS:
gtk_widget_show(widgets->SourceButton); 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->BackButton,1);
gtk_widget_set_sensitive(widgets->NextButton,1); gtk_widget_set_sensitive(widgets->NextButton,1);
gtk_widget_set_sensitive(widgets->CancelInstallButton,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){ if (!yon_char_is_empty(config(AUTOINSTALL_TYPE_INSTALL))&&!main_config.configure_mode){
gtk_widget_show(widgets->StartScenarioButton); gtk_widget_show(widgets->StartScenarioButton);
} else { } else {
@ -208,6 +208,7 @@ void yon_navigation_buttons_set_sensetiveness(main_window *widgets){
case YON_PAGE_BOOTLOADER: case YON_PAGE_BOOTLOADER:
case YON_PAGE_PACKAGES: case YON_PAGE_PACKAGES:
case YON_PAGE_NETWORK:{ case YON_PAGE_NETWORK:{
gtk_button_set_label(GTK_BUTTON(widgets->CancelInstallButton),CANCEL_LABEL);
gtk_widget_show(widgets->NextButton); gtk_widget_show(widgets->NextButton);
gtk_widget_hide(widgets->BackButton); gtk_widget_hide(widgets->BackButton);
gtk_button_set_label(GTK_BUTTON(widgets->NextButton),BACK_LABEL); 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); yon_os_components_init(widgets);
break; break;
case YON_PAGE_KERNEL: case YON_PAGE_KERNEL:
yon_kernel_setup(widgets); yon_kernel_init(widgets);
break; break;
case YON_PAGE_KERNEL_ADDON: case YON_PAGE_KERNEL_ADDON:
yon_kernel_addon_setup(widgets); yon_kernel_addon_init(widgets);
break; break;
case YON_PAGE_SOFTWARE: case YON_PAGE_SOFTWARE:
yon_software_init(widgets); yon_software_init(widgets);
@ -453,10 +454,10 @@ void yon_page_init(main_window *widgets, enum YON_PAGES page){
yon_user_init(widgets); yon_user_init(widgets);
break; break;
case YON_PAGE_STARTUP: case YON_PAGE_STARTUP:
yon_startup_services_setup(widgets); yon_startup_services_init(widgets);
break; break;
case YON_PAGE_APP_STARTUP: case YON_PAGE_APP_STARTUP:
yon_startup_apps_setup(widgets); yon_startup_apps_init(widgets);
break; break;
case YON_PAGE_BOOTLOADER: case YON_PAGE_BOOTLOADER:
yon_bootloader_init(widgets); 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_RECOVERY_USRDATA_ONLY:
case YON_PAGE_INSTALLATION_BEGIN: case YON_PAGE_INSTALLATION_BEGIN:
yon_install_init(widgets,page); 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; break;
case YON_PAGE_INSTALLATION: case YON_PAGE_INSTALLATION:
yon_install_slider_init(widgets); 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){ void on_page_prev_clicked(GtkWidget *, main_window *widgets){
enum YON_PAGES page = gtk_notebook_get_current_page(GTK_NOTEBOOK(widgets->Notebook)); 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){ if ((int)page!=-1){
gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),page); 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(); gtk_main_quit();
break; break;
case YON_PAGE_SECTIONS:
on_yon_exit(NULL,NULL,widgets);
break;
default: { default: {
if (main_config.install_thread){ if (main_config.install_thread){
dialog_confirmation_data *data = yon_confirmation_dialog_data_new(); dialog_confirmation_data *data = yon_confirmation_dialog_data_new();

@ -19,15 +19,7 @@ int yon_region_save(main_window *widgets){
yon_config_register(zone_parameter,zone_parameter_command,final); yon_config_register(zone_parameter,zone_parameter_command,final);
free(final); free(final);
if (!main_config.configure_mode){ if (!main_config.configure_mode){
int size; yon_config_save_args_simple(main_config.config_load_path,zone_parameter,NULL);
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);
}
} }
return 1; return 1;
} }
@ -197,6 +189,9 @@ void on_region_entry_changed(GtkWidget *, main_window *widgets){
} }
void yon_region_init(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(); 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->RegionCombo));
gtk_combo_box_text_remove_all(GTK_COMBO_BOX_TEXT(widgets->KeyboardNumLockCombo)); gtk_combo_box_text_remove_all(GTK_COMBO_BOX_TEXT(widgets->KeyboardNumLockCombo));

@ -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))); 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 *){ void on_config_custom_load(GtkWidget *,main_window *){
yon_load_proceed(YON_CONFIG_CUSTOM); 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; main_config.load_mode=YON_CONFIG_CUSTOM;
// yon_main_window_update_locale(widgets);
} }
void on_config_custom_load_last(GtkWidget *,main_window *){ 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); yon_config_load_config(YON_CONFIG_DEFAULT,config_get_default_command,NULL);
char *command = config_get_command(main_config.config_load_path); char *command = config_get_command(main_config.config_load_path);
yon_config_load_config(YON_CONFIG_CUSTOM,command,NULL); 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; main_config.load_mode=YON_CONFIG_CUSTOM;
// yon_main_window_update_locale(widgets);
} }
void on_config_global_local_save(GtkWidget *,main_window *widgets){ void on_config_global_local_save(GtkWidget *,main_window *widgets){

@ -23,15 +23,7 @@ int yon_install_options_save(GtkWidget *device_tree, GtkWidget *part_tree,char *
if(cur_section) free(cur_section); if(cur_section) free(cur_section);
if(cur_device) free(cur_device); if(cur_device) free(cur_device);
if (!main_config.configure_mode){ if (!main_config.configure_mode){
int size; yon_config_save_args_simple(main_config.config_load_path,device_parameter,AUTOINSTALL_TYPE_INSTALL,part_parameter,NULL);
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);
}
} }
return 1; return 1;
} }

@ -222,15 +222,7 @@ void on_source_accept(GtkWidget *,source_window *window){
yon_config_remove_by_key(source_parameter); yon_config_remove_by_key(source_parameter);
} }
if (!main_config.configure_mode){ if (!main_config.configure_mode){
int size; yon_config_save_args_simple(main_config.config_load_path,source_parameter,NULL);
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);
}
} }
on_subwindow_close(window->Window); on_subwindow_close(window->Window);
free(window); free(window);

@ -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; GtkTreeIter iter;
gtk_list_store_clear(widgets->StartupAppsList); gtk_list_store_clear(widgets->StartupAppsList);
int size; int size;
@ -213,15 +216,7 @@ int yon_startup_app_save(main_window *widgets){
yon_config_remove_by_key(AUTOEXEC_parameter); yon_config_remove_by_key(AUTOEXEC_parameter);
} }
if (!main_config.configure_mode){ if (!main_config.configure_mode){
int size; yon_config_save_args_simple(main_config.config_load_path,AUTOEXEC_parameter,NULL);
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);
}
} }
return 1; return 1;
} }

@ -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; GtkTreeIter iter;
gtk_list_store_clear(widgets->StartupList); gtk_list_store_clear(widgets->StartupList);
int size; int size;
@ -217,15 +220,7 @@ int yon_startup_save(main_window *widgets){
yon_config_remove_by_key(SERVICES_ENABLE_parameter); yon_config_remove_by_key(SERVICES_ENABLE_parameter);
} }
if (!main_config.configure_mode){ if (!main_config.configure_mode){
int size; yon_config_save_args_simple(main_config.config_load_path,SERVICES_ENABLE_parameter,NULL);
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);
}
} }
return 1; return 1;
} }

@ -34,19 +34,10 @@ int yon_users_save(main_window *widgets){
if (!main_config.configure_mode){ if (!main_config.configure_mode){
int users_size; int users_size;
config_str users = yon_config_get_all_by_key(USERADD_parameter_search,&users_size); config_str users = yon_config_get_all_keys_by_key(USERADD_parameter_search,&users_size);
char *parameter = yon_char_parsed_to_string(users,users_size," "); yon_char_parsed_add_or_create_if_exists(users,&users_size,root_password_parameter);
yon_char_parsed_free(users,users_size); 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);
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);
}
} }
return 1; return 1;
} }
@ -143,6 +134,13 @@ yon_user_struct *yon_user_struct_new(){
} }
void yon_user_init(main_window *widgets){ 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_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,DEFAULT_LABEL);
gtk_combo_box_text_append(GTK_COMBO_BOX_TEXT(widgets->UserRootPasswordCombo),NULL,SET_PASSWORD_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; int parsed_size;
char *parameter = yon_char_new(users[i]); char *parameter = yon_char_new(users[i]);
char *parameter_name = yon_char_divide_search(parameter,"=",-1); 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 *key = yon_config_parameter_get_key(parameter_name);
char *login = yon_config_parameter_get_key(strstr(key,"USERADD[")); char *login = yon_config_parameter_get_key(strstr(key,"USERADD["));
yon_char_remove_brackets(login); yon_char_remove_brackets(login);

@ -100,22 +100,6 @@ void yon_on_about(GtkWidget *, main_window *){
//functions //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;i<size;i++){
// yon_char_remove_last_symbol(enc_types[i],'\n');
// int parsed_size;
// config_str parsed = yon_char_parse(enc_types[i],&parsed_size,";");
// if (parsed_size){
// gtk_combo_box_text_append(GTK_COMBO_BOX_TEXT(target),parsed[0],parsed[0]);
// yon_char_parsed_free(parsed,parsed_size);
// }
// }
// }
void yon_fs_type_setup(GtkComboBoxText *target){ void yon_fs_type_setup(GtkComboBoxText *target){
int size; int size;
config_str enc_types = yon_resource_open_file(fs_types_path,&size); config_str enc_types = yon_resource_open_file(fs_types_path,&size);
@ -166,13 +150,13 @@ void on_toggle_button_switch_on(GtkWidget *, GtkToggleButton *toggle){
gtk_toggle_button_set_active(toggle,1); gtk_toggle_button_set_active(toggle,1);
} }
// // standard functions // standard functions
// /**config_init() /**config_init()
// * [EN] * [EN]
// * *
// * [RU] * [RU]
// * Функция инициализации всех параметров конфигурации * Функция инициализации всех параметров конфигурации
// */ */
void config_init(){ void config_init(){
memset(&main_config,0,sizeof(config)); memset(&main_config,0,sizeof(config));
main_config.socket_id=-1; main_config.socket_id=-1;
@ -249,7 +233,8 @@ void on_exit_accepted(main_window *widgets){
pthread_cancel((pthread_t)main_config.install_thread); pthread_cancel((pthread_t)main_config.install_thread);
g_mutex_unlock(&main_config.install_mutex); g_mutex_unlock(&main_config.install_mutex);
} }
yon_config_restore(widgets); if (!main_config.configure_mode)
yon_config_restore(widgets);
main_config.exit_accepted=1; main_config.exit_accepted=1;
while(gtk_events_pending()) gtk_main_iteration(); while(gtk_events_pending()) gtk_main_iteration();
} }
@ -331,7 +316,6 @@ void yon_main_window_create(main_window *widgets){
widgets->DocumentationMenuItem = yon_ubl_menu_item_documentation_new(DOCUMENTATION_LABEL); widgets->DocumentationMenuItem = yon_ubl_menu_item_documentation_new(DOCUMENTATION_LABEL);
widgets->AboutMenuItem = yon_ubl_menu_item_about_new(ABOUT_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->LoadLocalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"LoadLocalConfigurationMenuItem");
widgets->LoadExternalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"LoadExternalConfigurationMenuItem"); 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->StartScenarioButton=yon_gtk_builder_get_widget(builder,"StartScenarioButton");
widgets->SourceButton=yon_gtk_builder_get_widget(builder,"SourceButton"); 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->InstallationRadio=yon_gtk_builder_get_widget(builder,"InstallationRadio");
widgets->InstallationNearRadio=yon_gtk_builder_get_widget(builder,"InstallationNearRadio"); 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->InstallerCountryList=GTK_LIST_STORE(gtk_builder_get_object(builder,"InstallerCountryList"));
widgets->InstallerCountryFilter=GTK_TREE_MODEL(gtk_builder_get_object(builder,"InstallerCountryFilter")); widgets->InstallerCountryFilter=GTK_TREE_MODEL(gtk_builder_get_object(builder,"InstallerCountryFilter"));
widgets->InstallerLanguageList=GTK_LIST_STORE(gtk_builder_get_object(builder,"InstallerLanguageList")); 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->RegionMapBox=yon_gtk_builder_get_widget(builder,"RegionMapBox");
widgets->RegionMapTarget=NULL; widgets->RegionMapTarget=NULL;
widgets->RegionCombo=yon_gtk_builder_get_widget(builder,"RegionCombo"); 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->PacmanSoftwareChosenList = GTK_LIST_STORE(gtk_builder_get_object(builder,"PacmanSoftwareChosenList"));
widgets->PacmanSoftwareChosenCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"PacmanSoftwareChosenCell")); 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->StartupServicesTree = yon_gtk_builder_get_widget(builder,"StartupServicesTree");
widgets->StartupServicesAddButton = yon_gtk_builder_get_widget(builder,"StartupServicesAddButton"); widgets->StartupServicesAddButton = yon_gtk_builder_get_widget(builder,"StartupServicesAddButton");
widgets->StartupServicesEditButton = yon_gtk_builder_get_widget(builder,"StartupServicesEditButton"); 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->StartupAppsChosenCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"StartupAppsChosenCell"));
widgets->StartupAppsList = GTK_LIST_STORE(gtk_builder_get_object(builder,"StartupAppsList")); 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->BootloadTimerSwitch = yon_gtk_builder_get_widget(builder,"BootloadTimerSwitch");
widgets->BootloadTimerSpin = yon_gtk_builder_get_widget(builder,"BootloadTimerSpin"); widgets->BootloadTimerSpin = yon_gtk_builder_get_widget(builder,"BootloadTimerSpin");
widgets->BootloadDefaultOSEntry = yon_gtk_builder_get_widget(builder,"BootloadDefaultOSEntry"); widgets->BootloadDefaultOSEntry = yon_gtk_builder_get_widget(builder,"BootloadDefaultOSEntry");
widgets->BootloadDefaulOSButton = yon_gtk_builder_get_widget(builder,"BootloadDefaulOSButton"); 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->BootloadUserTree = yon_gtk_builder_get_widget(builder,"BootloadUserTree");
widgets->BootloadUserAddButton = yon_gtk_builder_get_widget(builder,"BootloadUserAddButton"); widgets->BootloadUserAddButton = yon_gtk_builder_get_widget(builder,"BootloadUserAddButton");
widgets->BootloadUserEditButton = yon_gtk_builder_get_widget(builder,"BootloadUserEditButton"); 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->BootloadUserRemoveButton = yon_gtk_builder_get_widget(builder,"BootloadUserRemoveButton");
widgets->BootloadUsersList = GTK_LIST_STORE(gtk_builder_get_object(builder,"BootloadUsersList")); 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->NetworkDomainSwitch = yon_gtk_builder_get_widget(builder,"NetworkDomainSwitch");
widgets->NetworkDomainNameEntry = yon_gtk_builder_get_widget(builder,"NetworkDomainNameEntry"); widgets->NetworkDomainNameEntry = yon_gtk_builder_get_widget(builder,"NetworkDomainNameEntry");
widgets->NetworkDomainAdminEntry = yon_gtk_builder_get_widget(builder,"NetworkDomainAdminEntry"); 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->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->LoadLocalConfigurationMenuItem),"activate",G_CALLBACK(on_config_local_load),widgets);
g_signal_connect(G_OBJECT(widgets->LoadExternalConfigurationMenuItem),"activate",G_CALLBACK(on_config_custom_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->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->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->NextButton),"clicked",G_CALLBACK(on_page_next_clicked),widgets);
g_signal_connect(G_OBJECT(widgets->BackButton),"clicked",G_CALLBACK(on_page_prev_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->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(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->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->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->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->UserRootPasswordEntry);
g_signal_connect(G_OBJECT(widgets->UserRootPasswordCombo),"changed",G_CALLBACK(yon_gtk_widget_set_sensitive_from_combo_box),widgets->UserRootPasswordButton); 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->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->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->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); 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->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->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->NetworkDomainNameEntry);
g_signal_connect(G_OBJECT(widgets->NetworkDomainSwitch),"state-set",G_CALLBACK(yon_gtk_widget_set_sensitive_from_switch),widgets->NetworkDomainAdminEntry); 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); 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_window_set_title(GTK_WINDOW(widgets->MainWindow),TITLE_LABEL);
gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder,"headerTopic")),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_window_set_icon_name(GTK_WINDOW(widgets->MainWindow),icon_path);
} }
gtk_builder_connect_signals(builder,NULL); 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()){ if (getuid()){
gtk_menu_item_activate(GTK_MENU_ITEM(widgets->ConfigurationModeMenuItem)); gtk_menu_item_activate(GTK_MENU_ITEM(widgets->ConfigurationModeMenuItem));
if (yon_char_is_empty(main_config.config_save_path)){ 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){ if (main_config.force_ini){
while(gtk_events_pending()) gtk_main_iteration(); while(gtk_events_pending()) gtk_main_iteration();
if (yon_configuration_path_check(main_config.config_save_path)){ 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 {
exit (1); exit (1);
} }
} }
@ -945,9 +891,6 @@ void yon_main_window_create(main_window *widgets){
main_config.part_size_default = default_part_size[0]; main_config.part_size_default = default_part_size[0];
} }
} }
// if (main_config.autoinstall){
// }
} }
gboolean yon_maximize_start(main_window *widgets){ gboolean yon_maximize_start(main_window *widgets){
@ -985,7 +928,6 @@ main_window *yon_main_window_complete(){
int main(int argc, char *argv[]){ int main(int argc, char *argv[]){
main_config.argv=argv; main_config.argv=argv;
main_config.argc = argc; main_config.argc = argc;
// __attribute__((unused)) char *locale = setlocale(LC_ALL, "en_US.UTF-8");
config_str unfound = NULL; config_str unfound = NULL;
int size=0; int size=0;
opterr=0; opterr=0;
@ -1027,7 +969,7 @@ int main(int argc, char *argv[]){
{ {
widgets = yon_main_window_complete(); 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); main_config.launch_arguments=yon_char_parsed_copy(argv,argc);

@ -294,6 +294,7 @@ layout && /description:/ {\
#define get_devices_command "ubinstall show --lsdevices" #define get_devices_command "ubinstall show --lsdevices"
#define get_parts_for_device_command "ubinstall show --lsparts" #define get_parts_for_device_command "ubinstall show --lsparts"
#define get_modules_command "ubinstall show --lsmodules" #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) #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 *LayoutsList;
GtkListStore *PartitionsList; GtkListStore *PartitionsList;
GtkWidget *LoadGlobalConfigurationMenuItem;
GtkWidget *LoadLocalConfigurationMenuItem; GtkWidget *LoadLocalConfigurationMenuItem;
GtkWidget *LoadExternalConfigurationMenuItem; 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_global_local_save(GtkWidget *, main_window *widgets);
void on_config_custom_load_last(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_custom_load(GtkWidget *, main_window *);
void on_config_global_load(GtkWidget *, main_window *);
void on_config_local_load(GtkWidget *, main_window *widgets); void on_config_local_load(GtkWidget *, main_window *widgets);
void yon_config_save_proceed(char *path, YON_CONFIG_TYPE type); void yon_config_save_proceed(char *path, YON_CONFIG_TYPE type);
void on_page_next_clicked(GtkWidget *, main_window *widgets); 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_load_proceed(YON_CONFIG_TYPE type);
void _yon_saving_threaded(char *final_command); 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_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_sections_get_next_page(main_window *widgets);
enum YON_PAGES yon_recovery_get_next(main_window *widgets); enum YON_PAGES yon_recovery_get_next(main_window *widgets);
enum YON_PAGES yon_page_get_current(GtkNotebook *target); 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); gboolean on_menu_clicked(GtkWidget *, GdkEventButton *event, yon_menu_window *window);
yon_menu_window *yon_menu_window_open(GtkWidget *, main_window *widgets); yon_menu_window *yon_menu_window_open(GtkWidget *, main_window *widgets);
void on_submenu_open(GtkWidget *, yon_menu_item *item); 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(kernel_row *row, char *name, char *modules, char *package, char *tags, char *description);
void yon_kernel_row_setup_tags(kernel_row *row, char *tags); 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); int yon_tag_add(GtkBox *target, char *tag_label, char *tag_style, char *icon_name);
kernel_row *yon_kernel_row_new(); kernel_row *yon_kernel_row_new();
void yon_kernel_resize(main_window *widgets); 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_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_srartup_services_toggled(GtkCellRenderer *, char *path, main_window *widgets);
void on_startup_service_edit(GtkWidget *, main_window *widgets); void on_startup_service_edit(GtkWidget *, main_window *widgets);
void on_startup_service_add(GtkWidget *, main_window *widgets); void on_startup_service_add(GtkWidget *, main_window *widgets);
startup_service_window *yon_startup_service_window_new(); startup_service_window *yon_startup_service_window_new();
void on_startup_edit_accept(GtkWidget *, main_window *widgets); void on_startup_edit_accept(GtkWidget *, main_window *widgets);
void on_startup_add_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_remove(GtkWidget *self, main_window *widgets);
void on_startup_services_selection_changed(GtkWidget *, 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); 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_srartup_apps_toggled(GtkWidget *, char *path, main_window *widgets);
void on_startup_apps_selection_changed(GtkWidget *, main_window *widgets); void on_startup_apps_selection_changed(GtkWidget *, main_window *widgets);
void on_startup_apps_remove(GtkWidget *self, 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_add_accept(GtkWidget *self, main_window *widgets);
void on_startup_app_edit_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(); startup_service_window *yon_startup_app_window_new();
@ -1580,3 +1579,4 @@ void on_bootloader_user_edit(GtkWidget *, main_window *widgets);
void on_bootloader_admin_toggled(GtkWidget *, char *path, 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_bootloader_user_remove(GtkWidget *, main_window *widgets);
void on_software_uncheck_all(GtkWidget *, main_window *widgets); void on_software_uncheck_all(GtkWidget *, main_window *widgets);
gboolean on_kernel_enabled_toggled(GtkWidget *self, GdkEventButton *, kernel_row *row);

@ -262,7 +262,7 @@ NULL)
#define SYSTEM_SECTION_LABEL _("System") #define SYSTEM_SECTION_LABEL _("System")
#define PACKAGES_SECTION_LABEL _("Installing software by groups") #define PACKAGES_SECTION_LABEL _("Installing software by groups")
#define KERNEL_LABEL _("Kernel") #define KERNEL_LABEL _("Kernel")
#define KERNEL_ADDON_LABEL _("Kernel addons") #define KERNEL_ADDON_LABEL _("Additional kernel components")
#define SOFTWARE_LABEL _("Installing Modules") #define SOFTWARE_LABEL _("Installing Modules")
#define PACMAN_SOFTWARE_LABEL _("Installing Packages") #define PACMAN_SOFTWARE_LABEL _("Installing Packages")
#define REGION_ICON_LABEL _("Location") #define REGION_ICON_LABEL _("Location")
@ -303,7 +303,7 @@ NULL)
// #define _LABEL _("Chosen size:") // #define _LABEL _("Chosen size:")
// #define _LABEL _("Overall size:") // #define _LABEL _("Overall size:")
// #define _LABEL _("Select your language:") // #define _LABEL _("Select your language:")
// #define _LABEL _("Selecting additional system kernel components") // #define _LABEL _("Additional kernel components")
// #define _LABEL _("<i><b>Package:</b></i>") // #define _LABEL _("<i><b>Package:</b></i>")
// #define _LABEL _("<i><b>Module:</b></i>") // #define _LABEL _("<i><b>Module:</b></i>")
// #define _LABEL _("New section at") // #define _LABEL _("New section at")

@ -68,7 +68,7 @@
</packing> </packing>
</child> </child>
<child> <child>
<object class="GtkEntry" id="UnitEntry"> <object class="GtkEntry" id="ServiceEntry">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
</object> </object>
@ -104,7 +104,7 @@
</packing> </packing>
</child> </child>
<child> <child>
<object class="GtkEntry" id="ServiceEntry"> <object class="GtkEntry" id="UnitEntry">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
</object> </object>

@ -213,6 +213,10 @@
<column type="gchararray"/> <column type="gchararray"/>
<!-- column-name ChosenVisible --> <!-- column-name ChosenVisible -->
<column type="gboolean"/> <column type="gboolean"/>
<!-- column-name Sensitive -->
<column type="gboolean"/>
<!-- column-name Packages -->
<column type="gchararray"/>
</columns> </columns>
</object> </object>
<object class="GtkListStore" id="PacmanSoftwareAllList"> <object class="GtkListStore" id="PacmanSoftwareAllList">
@ -617,16 +621,6 @@
<property name="visible">True</property> <property name="visible">True</property>
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="reserve-toggle-size">False</property> <property name="reserve-toggle-size">False</property>
<child>
<object class="GtkMenuItem" id="LoadGlobalConfigurationMenuItem">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Load global configuration</property>
<style>
<class name="menuitemtop"/>
</style>
</object>
</child>
<child> <child>
<object class="GtkMenuItem" id="LoadLocalConfigurationMenuItem"> <object class="GtkMenuItem" id="LoadLocalConfigurationMenuItem">
<property name="visible">True</property> <property name="visible">True</property>
@ -3010,7 +3004,7 @@ Select a different installation source.</property>
<object class="GtkLabel"> <object class="GtkLabel">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="label" translatable="yes">Selecting additional system kernel components</property> <property name="label" translatable="yes">Additional kernel components</property>
<property name="wrap">True</property> <property name="wrap">True</property>
<property name="xalign">0</property> <property name="xalign">0</property>
<attributes> <attributes>
@ -3530,6 +3524,7 @@ Select a different installation source.</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="truncate-multiline">True</property> <property name="truncate-multiline">True</property>
<property name="caps-lock-warning">False</property> <property name="caps-lock-warning">False</property>
<property name="secondary-icon-name">com.ublinux.libublsettingsui-gtk3.zoom-symbolic</property>
<property name="secondary-icon-tooltip-text" translatable="yes">Search</property> <property name="secondary-icon-tooltip-text" translatable="yes">Search</property>
</object> </object>
<packing> <packing>
@ -3618,6 +3613,7 @@ Select a different installation source.</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="model">PacmanSoftwareAllList</property> <property name="model">PacmanSoftwareAllList</property>
<property name="search-column">0</property> <property name="search-column">0</property>
<property name="enable-grid-lines">both</property>
<child internal-child="selection"> <child internal-child="selection">
<object class="GtkTreeSelection"> <object class="GtkTreeSelection">
<property name="mode">none</property> <property name="mode">none</property>
@ -3670,7 +3666,10 @@ Select a different installation source.</property>
<object class="GtkTreeViewColumn"> <object class="GtkTreeViewColumn">
<property name="title" translatable="yes">Description</property> <property name="title" translatable="yes">Description</property>
<child> <child>
<object class="GtkCellRendererText"/> <object class="GtkCellRendererText">
<property name="wrap-mode">word-char</property>
<property name="wrap-width">250</property>
</object>
<attributes> <attributes>
<attribute name="text">3</attribute> <attribute name="text">3</attribute>
</attributes> </attributes>
@ -3734,6 +3733,7 @@ Select a different installation source.</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="model">PacmanSoftwareChosenList</property> <property name="model">PacmanSoftwareChosenList</property>
<property name="search-column">0</property> <property name="search-column">0</property>
<property name="enable-grid-lines">both</property>
<child internal-child="selection"> <child internal-child="selection">
<object class="GtkTreeSelection"> <object class="GtkTreeSelection">
<property name="mode">none</property> <property name="mode">none</property>
@ -3786,7 +3786,10 @@ Select a different installation source.</property>
<object class="GtkTreeViewColumn"> <object class="GtkTreeViewColumn">
<property name="title" translatable="yes">Description</property> <property name="title" translatable="yes">Description</property>
<child> <child>
<object class="GtkCellRendererText"/> <object class="GtkCellRendererText">
<property name="wrap-mode">word-char</property>
<property name="wrap-width">250</property>
</object>
<attributes> <attributes>
<attribute name="text">3</attribute> <attribute name="text">3</attribute>
</attributes> </attributes>
@ -5659,22 +5662,22 @@ Select a different installation source.</property>
</child> </child>
<child> <child>
<object class="GtkTreeViewColumn"> <object class="GtkTreeViewColumn">
<property name="title" translatable="yes">Unit</property> <property name="title" translatable="yes">Service</property>
<child> <child>
<object class="GtkCellRendererText"/> <object class="GtkCellRendererText"/>
<attributes> <attributes>
<attribute name="text">1</attribute> <attribute name="text">2</attribute>
</attributes> </attributes>
</child> </child>
</object> </object>
</child> </child>
<child> <child>
<object class="GtkTreeViewColumn"> <object class="GtkTreeViewColumn">
<property name="title" translatable="yes">Service</property> <property name="title" translatable="yes">Unit</property>
<child> <child>
<object class="GtkCellRendererText"/> <object class="GtkCellRendererText"/>
<attributes> <attributes>
<attribute name="text">2</attribute> <attribute name="text">1</attribute>
</attributes> </attributes>
</child> </child>
</object> </object>
@ -7118,6 +7121,7 @@ Select a different installation source.</property>
<property name="yalign">0</property> <property name="yalign">0</property>
</object> </object>
<attributes> <attributes>
<attribute name="sensitive">4</attribute>
<attribute name="visible">3</attribute> <attribute name="visible">3</attribute>
<attribute name="active">0</attribute> <attribute name="active">0</attribute>
</attributes> </attributes>
@ -11338,7 +11342,7 @@ separately into the selected partition.</property>
<object class="GtkLabel" id="WelcomeInfoLabel22"> <object class="GtkLabel" id="WelcomeInfoLabel22">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="label" translatable="yes">Install the GRUB bootloader</property> <property name="label" translatable="yes">Installing the GRUB bootloader into the MBR or EFI partition</property>
<property name="wrap">True</property> <property name="wrap">True</property>
<property name="xalign">0</property> <property name="xalign">0</property>
<attributes> <attributes>

Loading…
Cancel
Save