From 387b736e44f7e12d76a2f3e28b0b78c2eac11793 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Thu, 11 Jul 2024 17:51:56 +0600 Subject: [PATCH 1/5] Added error page --- source/ubinstall-gtk.c | 8 +- source/ubinstall-gtk.h | 8 +- ubinstall-gtk.glade | 3185 +++++++++++++--------------------------- 3 files changed, 1035 insertions(+), 2166 deletions(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index 58b1a49..15168cc 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -322,7 +322,8 @@ void *on_config_save(void *data){ fclose(file); char *command = save_config_command(yon_char_parsed_to_string(parameters,size," ")); if (system(command)){ - yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),INSTALLATION_ERROR,5,BACKGROUND_IMAGE_FAIL_TYPE); + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALL_ERROR); + // yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),INSTALLATION_ERROR,5,BACKGROUND_IMAGE_FAIL_TYPE); }; main_config.install_thread=NULL; main_config.install_complete=1; @@ -437,6 +438,7 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){ case YON_PAGE_USERS: gtk_widget_set_sensitive(widgets->NextButton,1); break; + case YON_PAGE_INSTALL_ERROR: case YON_PAGE_COMPLETION:{ gtk_widget_set_sensitive(widgets->BackButton,0); gtk_widget_hide(gtk_widget_get_parent(widgets->PackageInstallationProgress)); @@ -449,10 +451,6 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){ gtk_button_set_label(GTK_BUTTON(widgets->NextButton),RESTART_LABEL); gtk_button_set_label(GTK_BUTTON(widgets->CancelInstallButton),EXIT_LABEL); gtk_image_set_from_icon_name(GTK_IMAGE(gtk_button_get_image(GTK_BUTTON(widgets->NextButton))),"com.ublinux.libublsettingsui-gtk3.sync-symbolic",GTK_ICON_SIZE_BUTTON); - // gtk_image_set_from_icon_name(GTK_IMAGE(gtk_button_get_image(GTK_BUTTON(widgets->CancelInstallButton))),"com.ublinux.libublsettingsui-gtk3.reset-symbolic",GTK_ICON_SIZE_BUTTON); - - // pthread_t tid; - // pthread_create(&tid,NULL,on_config_save,widgets); } break; case YON_PAGE_INSTALL_COMMON: diff --git a/source/ubinstall-gtk.h b/source/ubinstall-gtk.h index b81f2c3..707b82e 100755 --- a/source/ubinstall-gtk.h +++ b/source/ubinstall-gtk.h @@ -150,7 +150,13 @@ enum YON_PAGES { YON_PAGE_COMPLETED, YON_PAGE_INSTALL_COMMON, YON_PAGE_INSTALL_SEPARATE, - YON_PAGE_INSTALL_SAME_PARTITION + YON_PAGE_INSTALL_SAME_PARTITION, + YON_PAGE_INSTALL_OPTIONS, + YON_PAGE_OPTIONS_GRUB_INSTALL, + YON_PAGE_OPTIONS_GRUB_UPDATE, + YON_PAGE_OPTIONS_SEPARATE, + YON_PAGE_OPTIONS_OS_ONLY, + YON_PAGE_INSTALL_ERROR }; typedef struct { diff --git a/ubinstall-gtk.glade b/ubinstall-gtk.glade index e8c9147..877c6dc 100644 --- a/ubinstall-gtk.glade +++ b/ubinstall-gtk.glade @@ -91,26 +91,11 @@ False com.ublinux.libublsettingsui-gtk3.trash-symbolic - - True - False - com.ublinux.libublsettingsui-gtk3.properties-symbolic - - - True - False - com.ublinux.libublsettingsui-gtk3.properties-symbolic - True False com.ublinux.libublsettingsui-gtk3.properties-symbolic - - True - False - com.ublinux.libublsettingsui-gtk3.properties-symbolic - True False @@ -446,7 +431,6 @@ agreement 5 5 left - False True @@ -633,51 +617,95 @@ and help you install UBLinux on your computer - + True - False - vertical - 15 + True - + True - True - False - True - True + False + 5 True False + vertical 5 - - - True - False - /com/ublinux/images/clear_install_disk.png - - - False - True - 0 - - True False vertical - 5 + 15 - + True - False - Installation - True - 0 - - - + True + False + True + True + + + True + False + 5 + + + True + False + /com/ublinux/images/clear_install_disk.png + + + False + True + 0 + + + + + True + False + vertical + 5 + + + True + False + Installation + True + 0 + + + + + + False + True + 0 + + + + + True + False + Deleting all data on the selected disk and then installing the UBLinux system + 0 + + + False + True + 1 + + + + + True + True + 1 + + + + False @@ -686,11 +714,74 @@ and help you install UBLinux on your computer - + True - False - Deleting all data on the selected disk and then installing the UBLinux system - 0 + True + False + True + InstallationRadio + + + True + False + 5 + + + True + False + /com/ublinux/images/near_install_disk.png + + + False + True + 0 + + + + + True + False + vertical + 5 + + + True + False + Installation next to another system + True + 0 + + + + + + False + True + 0 + + + + + True + False + Shrinking a partition and creating a new one for installing UBLinux + 0 + + + False + True + 1 + + + + + True + True + 1 + + + + False @@ -698,329 +789,248 @@ and help you install UBLinux on your computer 1 - - - True - True - 1 - - - - - - - False - True - 0 - - - - - True - True - False - True - InstallationRadio - - - True - False - 5 - - - True - False - /com/ublinux/images/near_install_disk.png - - - False - True - 0 - - - - - True - False - vertical - 5 - + True - False - Installation next to another system - True - 0 - - - + True + False + True + InstallationRadio + + + True + False + 5 + + + True + False + /com/ublinux/images/in_part_install_disk.png + + + False + True + 0 + + + + + True + False + vertical + 5 + + + True + False + Installation on the same partition as another system + True + 0 + + + + + + False + True + 0 + + + + + True + False + Unpacking the UBLinux file system into an existing system + 0 + + + False + True + 1 + + + + + True + True + 1 + + + + False True - 0 + 2 - - True - False - Shrinking a partition and creating a new one for installing UBLinux - 0 + + True + False + True + InstallationRadio + + + True + False + 5 + + + True + False + gtk-missing-image + + + False + True + 0 + + + + + True + False + vertical + 5 + + + True + False + Advanced installation mode + True + 0 + + + + + + False + True + 0 + + + + + True + False + Installing OS files, user data on different partitions, creating RAID, etc. + 0 + + + False + True + 1 + + + + + True + True + 1 + + + + False True - 1 + 3 - - - True - True - 1 - - - - - - - False - True - 1 - - - - - True - True - False - True - InstallationRadio - - - True - False - 5 - - - True - False - /com/ublinux/images/in_part_install_disk.png - - - False - True - 0 - - - - - True - False - vertical - 5 - - - True - False - Installation on the same partition as another system - True - 0 - - - - - - False - True - 0 - - - - - True - False - Unpacking the UBLinux file system into an existing system - 0 - - - False - True - 1 - - - - - True - True - 1 - - - - - - - False - True - 2 - - - - - True - False - True - InstallationRadio - - - True - False - 5 - - - True - False - gtk-missing-image - - - False - True - 0 - - - - - True - False - vertical - 5 - - True - False - Advanced installation mode - True - 0 - - - - - - False - True - 0 - - - - - True - False - Installing OS files, user data on different partitions, creating RAID, etc. - 0 + + True + False + True + InstallationRadio + + + True + False + 5 + + + True + False + gtk-missing-image + + + False + True + 0 + + + + + True + False + vertical + 5 + + + True + False + Recovery + True + 0 + + + + + + False + True + 0 + + + + + True + False + Recovering bootloader, OS files, user data + 0 + + + False + True + 1 + + + + + True + True + 1 + + + + False True - 1 + 4 - - True - True - 1 - - - - - - - False - True - 3 - - - - - True - False - True - InstallationRadio - - - True - False - 5 - - - True - False - gtk-missing-image - False True - 0 - - - - - True - False - vertical - 5 - - - True - False - Recovery - True - 0 - - - - - - False - True - 0 - - - - - True - False - Recovering bootloader, OS files, user data - 0 - - - False - True - 1 - - - - - True - True 1 - - False - True - 4 - - False + True True - 1 + 2 @@ -3834,7 +3844,7 @@ installed. True False - Installation with Linux + Installation on same partition 14 @@ -3848,1613 +3858,588 @@ installed. vertical 5 - + True False - vertical - 5 - - - True - False - Installation parameters - - - - - - - - False - True - 0 - - + Installation options + + + + + + + + False + True + 0 + + + + + True + True + in - + True False - 5 - - True - False - gtk-missing-image - - - False - True - 0 - - - - + True False vertical - 5 - - - True - False - Installation next to another system - 0 - - - - - - False - True - 0 - - - - - True - False - Shrinking a partition and creating a new one for installing UBLinux - 0 - - - False - True - 1 - - - - - True - True - 1 - - - - - False - True - 1 - - - - - True - False - Attention! The selected partition will be modified: the size will be reduced. In the resulting free space, a partition will be created into which the UBLinux OS will be -installed. - True - 0 - 0 - - - False - True - 2 - - - - - False - True - 0 - - - - - True - False - vertical - 5 - - - True - False - vertical - 5 - - - True - False - 5 - + True False - Select device: - 0 - - - False - True - 0 - - - - - True - True - image2 - - - - False - True - end - 1 - - - - - False - True - 0 - - - - - True - True - in - 128 - - - True - True - DevicesList - 0 - - - Device - - - - - - - - Mark - - - - - - - - Capacity - - - - - + vertical + 5 - - Location + + True + False + 5 - + + True + False + gtk-missing-image + + + False + True + 0 + - - - - - - - False - True - 1 - - - - - False - True - 0 - - - - - True - False - vertical - - - True - False - Choose a section: - 0 - - - False - True - 0 - - - - - True - True - in - 128 - - - True - True - PartitionsList - - - Section - + + True + False + vertical + 5 + + + True + False + Additional installation options + 0 + + + + + + False + True + 0 + + + + + True + False + Separate installation of bootloader, system files, user data, etc. + 0 + + + False + True + 1 + + + + + True + True + 1 + + + False + True + 0 + - - Capacity - - - + + True + False + Attention! The selected OC UBLinux components will be installed +separately into the selected partition. + 0 + + False + True + 1 + - - - Free space - - - - - - - - System - - - - - - - - - - False - True - 1 - - - - - False - True - 1 - - - - - True - False - 5 - - - True - False - Specify the size of the new partition for UBLinux OS: - - - False - True - 0 - - - - - True - True - 0 - adjustment1 - - - False - True - 1 - - - - - True - False - - Mb - Gb - Tb - - - - False - True - 2 - - - - - False - True - 2 - - - - - False - True - 1 - - - - - 15 - - - - - True - False - Installation with Windows - - - 15 - False - - - - - True - False - vertical - 5 - - - True - False - Installation options - - - - - - - - False - True - 0 - - - - - True - False - vertical - 5 - - - True - False - 5 - - - True - False - gtk-missing-image - - - False - True - 0 - - - - - True - False - vertical - 5 - - - True - False - Additional installation options - 0 - - - - - - False - True - 0 - - - - - True - False - Separate installation of bootloader, system files, user data, etc. - 0 - - - False - True - 1 - - - - - True - True - 1 - - - - - False - True - 0 - - - - - True - False - Attention! The selected OC UBLinux components will be installed -separately into the selected partition. - 0 - - - False - True - 1 - - - - - False - True - 1 - - - - - True - False - vertical - 5 - - - True - True - False - True - True - - - True - False - 5 - - - True - False - gtk-missing-image - - - False - True - 0 - - - - - True - False - vertical - 5 - - - True - False - Installing GRUB - 0 - - - - - - - False - True - 0 - - - - - True - False - Install the GRUB bootloader - 0 - - - False - True - 1 - - - - - True - True - 1 - - - - - - - False - True - 0 - - - - - True - True - False - True - True - - - True - False - 5 - - - True - False - gtk-missing-image - - - False - True - 0 - - - - - True - False - vertical - 5 - - - True - False - GRUB update - 0 - - - - - - - False - True - 0 - - - - - True - False - Update (reinstall) the GRUB bootloader - 0 - - - False - True - 1 - - - - - True - True - 1 - - - - - - - False - True - 1 - - - - - True - True - False - True - True - - - True - False - 5 - - - True - False - gtk-missing-image - - - False - True - 0 - - - - - True - False - vertical - 5 - - - True - False - Separate installation - 0 - - - - - - - False - True - 0 - - - - - True - False - Installing OS components and user data on different disk partitions - 0 - - - False - True - 1 - - - - - True - True - 1 - - - - - - - False - True - 2 - - - - - True - True - False - True - True - - - True - False - 5 - - - True - False - gtk-missing-image - - - False - True - 0 - - - - - True - False - vertical - 5 - - - True - False - OS only - 0 - - - - - - - False - True - 0 - - - - - True - False - Installing only OS components without user data - 0 - - - False - True - 1 - - - - - True - True - 1 - - - - - - - False - True - 3 - - - - - True - True - False - True - True - - - True - False - 5 - - - True - False - gtk-missing-image - - - False - True - 0 - - - - - True - False - vertical - 5 - - - True - False - User data only - 0 - - - - - - - False - True - 0 - - - - - True - False - Installing only user data without OS components - 0 - - - False - True - 1 - - - - - True - True - 1 - - - - - - - False - True - 4 - - - - - False - True - 2 - - - - - 16 - - - - - True - False - Install with more options - - - 16 - False - - - - - True - False - vertical - 5 - - - True - False - Installation parameters - - - - - - - - False - True - 0 - - - - - True - False - vertical - 5 - - - True - False - 5 - 10 - 5 - - - True - False - gtk-missing-image - - - False - True - 0 - - - - - True - False - vertical - 5 - - - True - False - Installing GRUB - 0 - - - - - - - False - True - 0 - - - - - True - False - Install the GRUB bootloader - 0 - - - False - True - 1 - - - - - True - True - 1 - - - - - False - True - 0 - - - - - True - False - Choose device: - 0 - - - False - True - 1 - - - - - True - True - in - 128 - - - True - True - DevicesList - 0 - - - Device - - - - - - - - Mark - - - - - - - - Capacity - - - - - - - - Location - - - - - - - - - - False - True - 2 - - - - - False - True - 1 - - - - - 17 - - - - - True - False - GRUB install - - - 17 - False - - - - - True - False - vertical - 5 - - - True - False - Installation parameters - - - - - - - - False - True - 0 - - - - - True - False - vertical - 5 - - - True - False - 5 - 10 - 5 - - - True - False - gtk-missing-image - - - False - True - 0 - - - - - True - False - vertical - 5 - - - True - False - GRUB update - 0 - - - - - - - False - True - 0 - - - - - True - False - Update (reinstall) the GRUB bootloader - 0 - - - False - True - 1 - - - - - True - True - 1 - - - - - False - True - 0 - - - - - True - False - Choose device: - 0 - - - False - True - 1 - - - - - True - True - in - 128 - - - True - True - DevicesList - 0 - - - Device - - - - - - - - Mark - - - - - - - - Capacity - - - - - - - - Location - - - - - - - - - - False - True - 2 - - - - - False - True - 1 - - - - - 18 - - - - - True - False - GRUB update - - - 18 - False - - - - - True - False - vertical - 5 - - - True - False - vertical - 5 - - - True - False - Installation parameters - - - - - - - - False - True - 0 - - - - - True - False - 5 - 10 - 5 - - - True - False - gtk-missing-image - - - False - True - 0 - - - - - True - False - vertical - 5 - - - True - False - Separate installation - 0 - - - - - - - False - True - 0 - - - - - True - False - Installing OS components and user data on different disk partitions - 0 - - - False - True - 1 - - - - - True - True - 1 - - - - - False - True - 1 - - - - - True - False - Attention! The UBLinux OS will be installed on the selected partition with Linux OS already installed. All user data will be saved. - True - 0 - 0 - - - False - True - 2 - - - - - False - True - 0 - - - - - True - False - vertical - 5 - - - True - False - vertical - 5 - - - True - False - 5 - - - True - False - Select device: - 0 - - - False - True - 0 - - - - - True - True - True - image3 - False True - end 1 - - - False - True - 0 - - - - - True - True - in - 128 - + True - True - DevicesList - 0 - - - Device - - - - - - - - Mark - - - - - - - - Capacity - - - - - + False + vertical + 5 - - Location + + True + True + False + True + True - + + True + False + 5 + + + True + False + gtk-missing-image + + + False + True + 0 + + + + + True + False + vertical + 5 + + + True + False + Installing GRUB + 0 + + + + + + + False + True + 0 + + + + + True + False + Install the GRUB bootloader + 0 + + + False + True + 1 + + + + + True + True + 1 + + + + + False + True + 0 + - - - - - False - True - 1 - - - - - False - True - 0 - - - - - True - False - vertical - - - True - False - Choose a section: - 0 - - - False - True - 0 - - - - - True - True - in - 128 - - - True - True - PartitionsList - - Section + + True + True + False + True + True - + + True + False + 5 + + + True + False + gtk-missing-image + + + False + True + 0 + + + + + True + False + vertical + 5 + + + True + False + GRUB update + 0 + + + + + + + False + True + 0 + + + + + True + False + Update (reinstall) the GRUB bootloader + 0 + + + False + True + 1 + + + + + True + True + 1 + + + + + False + True + 1 + - - Capacity + + True + True + False + True + True - + + True + False + 5 + + + True + False + gtk-missing-image + + + False + True + 0 + + + + + True + False + vertical + 5 + + + True + False + Separate installation + 0 + + + + + + + False + True + 0 + + + + + True + False + Installing OS components and user data on different disk partitions + 0 + + + False + True + 1 + + + + + True + True + 1 + + + + + False + True + 2 + - - Free space + + True + True + False + True + True - + + True + False + 5 + + + True + False + gtk-missing-image + + + False + True + 0 + + + + + True + False + vertical + 5 + + + True + False + OS only + 0 + + + + + + + False + True + 0 + + + + + True + False + Installing only OS components without user data + 0 + + + False + True + 1 + + + + + True + True + 1 + + + + + False + True + 3 + - - System + + True + True + False + True + True - + + True + False + 5 + + + True + False + gtk-missing-image + + + False + True + 0 + + + + + True + False + vertical + 5 + + + True + False + User data only + 0 + + + + + + + False + True + 0 + + + + + True + False + Installing only user data without OS components + 0 + + + False + True + 1 + + + + + True + True + 1 + + + + + False + True + 4 + + + False + True + 2 + - - False - True - 1 - - - False - True - 1 - + + True + True + 3 + + + + + 15 + + + + + True + False + Install with more options + + + 15 + False + + + + + True + False + vertical + 5 + + + True + False + Installation parameters + + + + + + False True - 1 + 0 + + + - 19 + 16 True False - Separate installation + GRUB install - 19 + 16 False @@ -5465,112 +4450,102 @@ separately into the selected partition. vertical 5 - + True False - vertical - 5 - - - True - False - Installation parameters - - - - - - - - False - True - 0 - - - - - True - False - 5 - 10 - 5 - - - True - False - gtk-missing-image - - - False - True - 0 - - - - - True - False - vertical - 5 - - - True - False - OS only - 0 - - - - - - - False - True - 0 - - - - - True - False - Installing only OS components without user data - 0 - - - False - True - 1 - - - - - True - True - 1 - - - - - False - True - 1 - - - - - True - False - Attention! The UBLinux OS will be installed on the selected partition with Linux OS already installed. All user data will be saved. - True - 0 - 0 - - - False - True - 2 - - + Installation parameters + + + + + + + + False + True + 0 + + + + + + + + + + + 17 + + + + + True + False + GRUB update + + + 17 + False + + + + + True + False + vertical + 5 + + + True + False + Installation parameters + + + + + + + + False + True + 0 + + + + + + + + 18 + + + + + True + False + Separate installation + + + 18 + False + + + + + True + False + vertical + 5 + + + True + False + Installation parameters + + + + + False @@ -5579,196 +4554,51 @@ separately into the selected partition. - + + + + + 19 + + + + + True + False + OS only + + + 19 + False + + + + + True + False + vertical + 5 + + True False - vertical - 5 - - - True - False - vertical - 5 - - - True - False - 5 - - - True - False - Select device: - 0 - - - False - True - 0 - - - - - True - True - True - image4 - - - - False - True - end - 1 - - - - - False - True - 0 - - - - - True - True - in - 128 - - - True - True - DevicesList - 0 - - - Device - - - - - - - - Mark - - - - - - - - Capacity - - - - - - - - Location - - - - - - - - - - False - True - 1 - - - - - False - True - 0 - - - - - True - False - vertical - - - True - False - Choose a section: - 0 - - - False - True - 0 - - - - - True - True - in - 128 - - - True - True - PartitionsList - - - Section - - - - - - - - Capacity - - - - - - - - Free space - - - - - - - - System - - - - - - - - - - False - True - 1 - - - - - False - True - 1 - - + Installation error + + + + + + + + + False + True + 0 + + + + + False False @@ -5776,6 +4606,41 @@ separately into the selected partition. 1 + + + True + False + end + Error + + + + + + + True + True + 2 + + + + + True + False + start + Error has occured while installation process + center + True + + + + + + True + True + 3 + + 20 @@ -5785,7 +4650,7 @@ separately into the selected partition. True False - OS only + Installation error 20 From df39164d76d2f8ea972e2cde745586ac427281d2 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Thu, 11 Jul 2024 18:12:32 +0600 Subject: [PATCH 2/5] Localisation updates --- source/ubinstall-gtk.c | 2 -- source/ubl-strings.h | 6 +++++- ubinstall-gtk.pot | 16 ++++++++++++++++ ubinstall-gtk_ru.po | 16 ++++++++++++++++ 4 files changed, 37 insertions(+), 3 deletions(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index 15168cc..9374685 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -422,8 +422,6 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){ gtk_widget_set_sensitive(widgets->BackButton,0); if (main_config.config_save_thread) g_thread_join(main_config.config_save_thread); - // if (!main_config.install_thread&&!main_config.install_complete) - // main_config.install_thread = g_thread_new("InstallThread",(GThreadFunc)yon_installation_start,widgets); if (!main_config.progress_thread) main_config.progress_thread = gdk_threads_add_timeout(500,(GSourceFunc)yon_installation_progress_update,widgets); diff --git a/source/ubl-strings.h b/source/ubl-strings.h index e8cd942..84a4a37 100644 --- a/source/ubl-strings.h +++ b/source/ubl-strings.h @@ -115,4 +115,8 @@ #define DOCUMENTATION_CHECK_LABEL _("Always redirect to online documentation") #define OPEN_DOCUMENTATION_LABEL _("Open documentation") -#define INSTALLATION_ERROR _("Installation error") \ No newline at end of file +#define INSTALLATION_ERROR _("Installation error") +#define ATTENTION_NEXT_LABEL _("Attention! The UBLinux OS will be installed on the selected partition with OS already installed. All user data will be saved.") + +#define ERROR_HEAD_LABEL _("Error") +#define ERROR_LABEL _("Error has occured while installation process") \ No newline at end of file diff --git a/ubinstall-gtk.pot b/ubinstall-gtk.pot index bdbfe9d..ee1a341 100644 --- a/ubinstall-gtk.pot +++ b/ubinstall-gtk.pot @@ -462,6 +462,22 @@ msgstr "" msgid "Open documentation" msgstr "" +#: source/ubl-strings.h:102 +msgid "Installation error" +msgstr "" + +#: source/ubl-strings.h:102 +msgid "Attention! The UBLinux OS will be installed on the selected partition with OS already installed. All user data will be saved." +msgstr "" + +#: source/ubl-strings.h:102 +msgid "Error" +msgstr "" + +#: source/ubl-strings.h:102 +msgid "Error has occured while installation process" +msgstr "" + msgid "Afrikaans" msgstr "" diff --git a/ubinstall-gtk_ru.po b/ubinstall-gtk_ru.po index bf87102..0684f71 100644 --- a/ubinstall-gtk_ru.po +++ b/ubinstall-gtk_ru.po @@ -479,6 +479,22 @@ msgstr "Всегда перенаправлять" msgid "Open documentation" msgstr "Открыть документацию" +#: source/ubl-strings.h:102 +msgid "Installation error" +msgstr "Ошибка установки" + +#: source/ubl-strings.h:102 +msgid "Attention! The UBLinux OS will be installed on the selected partition with OS already installed. All user data will be saved." +msgstr "Внимание! ОС UBLinux будет установлена в выбранный раздел. Если не менять тип ФС и не форматировать, все данные на разделе будут сохранены" + +#: source/ubl-strings.h:102 +msgid "Error" +msgstr "Ошибка" + +#: source/ubl-strings.h:102 +msgid "Error has occured while installation process" +msgstr "Во время процесса установки произошла ошибка" + msgid "Afrikaans" msgstr "Африканский" From 2746d1e21e815cffa1ca592c7f7299412662ce26 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 15 Jul 2024 09:08:06 +0600 Subject: [PATCH 3/5] Added new pages --- gresource.xml | 1 + source/CMakeLists.txt | 1 + source/ubinstall-gtk.c | 254 +++- source/ubinstall-gtk.h | 38 +- source/ubl-strings.h | 13 + ubinstall-gtk.glade | 2547 ++++++++++++++++++++++++++++++++++++---- 6 files changed, 2587 insertions(+), 267 deletions(-) diff --git a/gresource.xml b/gresource.xml index 359f308..9844d18 100644 --- a/gresource.xml +++ b/gresource.xml @@ -31,6 +31,7 @@ language.png in_part_install_disk.png clear_install_disk.png + manual_install_disk.png modules.csv diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt index 96f05bf..f4b0dd8 100644 --- a/source/CMakeLists.txt +++ b/source/CMakeLists.txt @@ -56,6 +56,7 @@ set(DEPENDFILES ../images/near_install_disk.png ../images/in_part_install_disk.png ../images/clear_install_disk.png + ../images/manual_install_disk.png ../images/language.png ../ubinstall-gtk.glade ../ubinstall-gtk-language.glade diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index 9374685..cd688b0 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -227,6 +227,12 @@ void config_init(){ main_config.progress_thread=0; main_config.install_complete=0; main_config.save_done=0; + main_config.configure_mode=0; +} + +void on_configuration_mode_switch(GtkWidget *self); +void on_configuration_mode_switch(GtkWidget *self){ + main_config.configure_mode = gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(self)); } int yon_image_resize_from_container(GtkImage *target, GdkPixbuf *pixbuf_unscaled); @@ -405,37 +411,45 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){ gtk_button_set_label(GTK_BUTTON(widgets->CancelInstallButton),CANCEL_LABEL); gtk_image_set_from_icon_name(GTK_IMAGE(gtk_button_get_image(GTK_BUTTON(widgets->NextButton))),"com.ublinux.ubinstall-gtk.arrow-right-symbolic",GTK_ICON_SIZE_BUTTON); gtk_image_set_from_icon_name(GTK_IMAGE(gtk_button_get_image(GTK_BUTTON(widgets->CancelInstallButton))),"com.ublinux.ubinstall-gtk.circle-exit-symbolic",GTK_ICON_SIZE_BUTTON); + gtk_widget_set_sensitive(widgets->ConfigurationModeMenuItem,1); } break; + case YON_PAGE_LICENCE:{ gtk_widget_set_sensitive(widgets->CancelInstallButton,1); gtk_widget_set_sensitive(widgets->BackButton,1); } break; + case YON_PAGE_REGION: { yon_image_resize_from_container(GTK_IMAGE(widgets->RegionImage), widgets->regions_original); } break; + case YON_PAGE_KEYBOARD: { yon_image_resize_from_container(GTK_IMAGE(widgets->KeyboardImage), widgets->keyboard_original); } break; + case YON_PAGE_INSTALLATION:{ gtk_widget_set_sensitive(widgets->BackButton,0); - if (main_config.config_save_thread) + if (main_config.config_save_thread&&!main_config.configure_mode) g_thread_join(main_config.config_save_thread); - if (!main_config.progress_thread) + if (!main_config.progress_thread&&!main_config.configure_mode) main_config.progress_thread = gdk_threads_add_timeout(500,(GSourceFunc)yon_installation_progress_update,widgets); - if (!main_config.slider_thread) + if (!main_config.slider_thread&&!main_config.configure_mode) main_config.slider_thread = g_timeout_add(5000,(GSourceFunc)on_image_slide,widgets); gtk_widget_show(gtk_widget_get_parent(widgets->InstallationProgress)); } break; + case YON_PAGE_OS_COMPONENTS: case YON_PAGE_SOFTWARE: yon_switch_page_render(widgets,3); break; + case YON_PAGE_USERS: gtk_widget_set_sensitive(widgets->NextButton,1); break; + case YON_PAGE_INSTALL_ERROR: case YON_PAGE_COMPLETION:{ gtk_widget_set_sensitive(widgets->BackButton,0); @@ -451,6 +465,7 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){ gtk_image_set_from_icon_name(GTK_IMAGE(gtk_button_get_image(GTK_BUTTON(widgets->NextButton))),"com.ublinux.libublsettingsui-gtk3.sync-symbolic",GTK_ICON_SIZE_BUTTON); } break; + case YON_PAGE_INSTALL_COMMON: case YON_PAGE_INSTALL_SEPARATE: case YON_PAGE_INSTALL_SAME_PARTITION: { @@ -489,6 +504,32 @@ void *on_setup_system_configuration(void * data){ return NULL; } +void yon_install_options_save(GtkWidget *device_tree, GtkWidget *part_tree,char *mode,main_window *widgets); +void yon_install_options_save(GtkWidget *device_tree, GtkWidget *part_tree,char *mode,main_window *widgets){ + GtkTreeIter iter,itar; + GtkTreeModel *model,*model2; + if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(device_tree)),&model,&iter)){ + if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(part_tree)),&model2,&itar)){ + char *cur_device, *cur_section; + gtk_tree_model_get(model,&iter,0,&cur_device,-1); + gtk_tree_model_get(model2,&itar,0,&cur_section,-1); + yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device); + yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,mode); + yon_config_register(part_parameter,part_parameter_command,cur_section); + if (!main_config.configure_mode) + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); + else + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION); + } else { + yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + yon_ubl_status_highlight_incorrect(part_tree); + } + } else { + yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + yon_ubl_status_highlight_incorrect(device_tree); + } +} + void on_page_navigation_clicked(GtkWidget *self, main_window *widgets); void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ int mode = self==widgets->NextButton ? 1 : self == widgets->BackButton ? -1 : self==widgets->CancelInstallButton?-2:0; @@ -496,6 +537,11 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ switch (mode){ case 1: { // Next switch (page){ + case YON_PAGE_WELCOME:{ + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_LICENCE); + gtk_widget_set_sensitive(widgets->ConfigurationModeMenuItem,0); + } break; + case YON_PAGE_SECTIONS:{ //sections int active_id=-1; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->InstallationRadio))) @@ -504,8 +550,8 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ active_id=1; else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->InstallationLinuxRadio))) active_id=2; - // else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->InstallationRadio))) - // active_id=3; + else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->InstallationWindowsRadio))) + active_id=3; // else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->InstallationRadio))) // active_id=4; main_config.install_mode=active_id; @@ -518,6 +564,9 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ break; case 2: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALL_SAME_PARTITION); + break; + case 3: + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALL_OPTIONS); } }break; case YON_PAGE_REGION:{ //region @@ -556,6 +605,7 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),page+1); }break; + case YON_PAGE_KEYBOARD: { //keyboard gtk_widget_set_sensitive(widgets->BackButton,1); if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->ManualLayoutRadio))){ @@ -593,10 +643,12 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),page+1); } break; + default:{ // all other pages gtk_widget_set_sensitive(widgets->BackButton,1); gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),page+1); }break; + case YON_PAGE_INSTALL_COMMON: { GtkTreeModel *model; GtkTreeIter iter; @@ -608,15 +660,19 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ char *file_system_type = (char*)gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(widgets->CommonInstallationFilesystemTypeCombo)); char *device_name = (char*)gtk_entry_get_text(GTK_ENTRY(widgets->CommonInstallationSectionNameEntry)); char *device; - yon_config_remove_by_key(AUTOSTART_PARTS); + yon_config_remove_by_key(part_parameter); gtk_tree_model_get(model,&iter,0,&device,-1); yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"fast"); yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,device); yon_config_register(device_label_parameter,device_label_parameter_command,device_name); yon_config_register(part_type_parameter,part_type_parameter_command,file_system_type); + if (!main_config.configure_mode) gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); + else + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION); }break; + case YON_PAGE_INSTALL_SEPARATE: { GtkTreeModel *model; @@ -644,7 +700,7 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ gtk_tree_model_get(model,&iter,0,&part,-1); yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"next"); yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,device); - yon_config_register(AUTOSTART_PARTS,AUTOSTART_PARTS_command,part); + yon_config_register(part_parameter,part_parameter_command,part); yon_config_register(device_label_parameter,device_label_parameter_command,device_name); if (!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->NextInstallationFormatCheck))){ yon_config_register(device_format_parameter,device_format_parameter_command,"no"); @@ -657,9 +713,13 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ if (!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->NextInstallationFormatCheck))) yon_config_register(device_format_parameter,device_format_parameter_command,"no"); + if (!main_config.configure_mode) gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); + else + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION); } break; + case YON_PAGE_INSTALL_SAME_PARTITION: { GtkTreeModel *model; @@ -682,7 +742,7 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ gtk_tree_model_get(model,&iter,0,&part,-1); yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"part"); yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,device); - yon_config_register(AUTOSTART_PARTS,AUTOSTART_PARTS_command,part); + yon_config_register(part_parameter,part_parameter_command,part); yon_config_register(device_label_parameter,device_label_parameter_command,device_name); if (!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->SameInstallationFormatCheck))){ @@ -695,8 +755,12 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ } + if (!main_config.configure_mode) gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); + else + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION); }break; + case YON_PAGE_USERS:{ //users if (yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(widgets->UserNameEntry)))){ @@ -790,51 +854,152 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){ } else { yon_config_remove_by_key(xkboptions_parameter); } - if (!main_config.install_complete){ - gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION); + if (!main_config.configure_mode){ + if (!main_config.install_complete){ + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION); + } else { + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_COMPLETION); + } + if (gtk_progress_bar_get_fraction(GTK_PROGRESS_BAR(widgets->InstallationProgress))>0.9){ + pthread_t tid; + pthread_create(&tid,NULL,on_setup_system_configuration,widgets); + } + main_config.save_done=1; + yon_debug_output("Save changed to: %s\n",yon_char_from_int(main_config.save_done)); + + yon_debug_output("Install state: %s\n",yon_char_from_int(main_config.install_complete)); + if (main_config.install_complete) + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_COMPLETION); + else { + gtk_widget_set_sensitive(widgets->CancelInstallButton,0); + gtk_widget_set_sensitive(widgets->NextButton,0); + gtk_widget_set_sensitive(widgets->BackButton,0); + } } else { - gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_COMPLETION); - } - if (gtk_progress_bar_get_fraction(GTK_PROGRESS_BAR(widgets->InstallationProgress))>0.9){ - pthread_t tid; - pthread_create(&tid,NULL,on_setup_system_configuration,widgets); - } - main_config.save_done=1; - yon_debug_output("Save changed to: %s\n",yon_char_from_int(main_config.save_done)); - - yon_debug_output("Install state: %s\n",yon_char_from_int(main_config.install_complete)); - if (main_config.install_complete) - gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_COMPLETION); - else { - gtk_widget_set_sensitive(widgets->CancelInstallButton,0); - gtk_widget_set_sensitive(widgets->NextButton,0); - gtk_widget_set_sensitive(widgets->BackButton,0); + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_CONFIGURE_END); } }break; + case YON_PAGE_INSTALLATION_BEGIN:{ pthread_t tid; pthread_create(&tid,NULL,on_config_save,widgets); gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION); } break; + case YON_PAGE_COMPLETION: if (!system("reboot")) return; break; + + case YON_PAGE_INSTALL_OPTIONS: { + int mode = -1; + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->GrubInstallRadio))){ + mode = 0; + } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->GrubUpdateRadio))){ + mode = 1; + } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->SeparateRadio))){ + mode = 2; + } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->OSRadio))){ + mode = 3; + } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->UserDataOnlyRadio))){ + mode = 4; + } + switch(mode){ + case 0: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_GRUB_INSTALL); + break; + case 1: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_GRUB_UPDATE); + break; + case 2: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_SEPARATE); + break; + case 3: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_OS_ONLY); + break; + case 4: gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_USRDATA_ONLY); + break; + } + } break; + + case YON_PAGE_OPTIONS_GRUB_INSTALL:{ + GtkTreeIter iter; + GtkTreeModel *model; + if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubInstallDevicesTree)),&model,&iter)){ + char *cur_device; + gtk_tree_model_get(model,&iter,0,&cur_device,-1); + yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device); + yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_install"); + yon_config_remove_by_key(part_parameter); + if (!main_config.configure_mode) + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); + else + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION); + } else { + yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + yon_ubl_status_highlight_incorrect(widgets->GrubInstallDevicesTree); + } + } break; + + case YON_PAGE_OPTIONS_GRUB_UPDATE:{ + GtkTreeIter iter; + GtkTreeModel *model; + if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubUpdateDevicesTree)),&model,&iter)){ + char *cur_device; + gtk_tree_model_get(model,&iter,0,&cur_device,-1); + yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device); + yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_update"); + yon_config_remove_by_key(part_parameter); + if (!main_config.configure_mode) + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN); + else + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION); + } else { + yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); + yon_ubl_status_highlight_incorrect(widgets->GrubUpdateDevicesTree); + } + }break; + + case YON_PAGE_OPTIONS_SEPARATE:{ + yon_install_options_save(widgets->SeparateDevicesTree,widgets->SeparateSysSectionTree,"system_only",widgets); + }break; + + case YON_PAGE_OPTIONS_SEPARATE_USRDATA:{ + yon_install_options_save(widgets->SeparateUserDevicesTree,widgets->SeparateUserSysSectionTree,"system_only",widgets); + } break; + + case YON_PAGE_OPTIONS_OS_ONLY:{ + yon_install_options_save(widgets->OSDevicesTree,widgets->OSSysSectionTree,"system_only",widgets); + } break; + + case YON_PAGE_OPTIONS_USRDATA_ONLY:{ + yon_install_options_save(widgets->UserdataDevicesTree,widgets->UserdataSysSectionTree,"data_only",widgets); + } break; } } break; case -1: { // Previous switch (page){ case YON_PAGE_REGION: { - - gtk_widget_set_sensitive(widgets->BackButton,0); - gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),page-1); + if (!main_config.configure_mode){ + gtk_widget_set_sensitive(widgets->BackButton,0); + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),page-1); + } else { + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_SECTIONS); + } }break; + case YON_PAGE_INSTALL_COMMON: case YON_PAGE_INSTALL_SEPARATE: case YON_PAGE_INSTALL_SAME_PARTITION: + case YON_PAGE_INSTALL_OPTIONS: { - gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),2); + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_SECTIONS); } break; + + case YON_PAGE_OPTIONS_GRUB_INSTALL: + case YON_PAGE_OPTIONS_GRUB_UPDATE: + case YON_PAGE_OPTIONS_SEPARATE: + case YON_PAGE_OPTIONS_OS_ONLY: + case YON_PAGE_OPTIONS_USRDATA_ONLY: + gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALL_OPTIONS); + break; + default:{ gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),page-1); } @@ -1112,12 +1277,40 @@ main_window *yon_main_window_complete(){ widgets->GpartedNearButton = yon_gtk_builder_get_widget(builder,"GpartedNearButton"); widgets->GpartedSameButton = yon_gtk_builder_get_widget(builder,"GpartedSameButton"); + widgets->ConfigurationModeMenuItem = yon_gtk_builder_get_widget(builder,"ConfigurationModeMenuItem"); widgets->DocumentationMenuItem = yon_gtk_builder_get_widget(builder,"DocumentationMenuItem"); widgets->AboutMenuItem = yon_gtk_builder_get_widget(builder,"AboutMenuItem"); widgets->StatusBox = yon_gtk_builder_get_widget(builder,"StatusBox"); widgets->AdditionalSoftwareCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"AdditionalSoftwareCell")); + widgets->GrubInstallRadio = yon_gtk_builder_get_widget(builder,"GrubInstallRadio"); + widgets->GrubUpdateRadio = yon_gtk_builder_get_widget(builder,"GrubUpdateRadio"); + widgets->SeparateRadio = yon_gtk_builder_get_widget(builder,"SeparateRadio"); + widgets->OSRadio = yon_gtk_builder_get_widget(builder,"OSRadio"); + widgets->UserDataOnlyRadio = yon_gtk_builder_get_widget(builder,"UserDataOnlyRadio"); + + widgets->GpartedGrubInstallButton = yon_gtk_builder_get_widget(builder,"GpartedGrubInstallButton"); + widgets->GrubInstallDevicesTree = yon_gtk_builder_get_widget(builder,"GrubInstallDevicesTree"); + + widgets->GpartedGrubUpdateButton = yon_gtk_builder_get_widget(builder,"GpartedGrubUpdateButton"); + widgets->GrubUpdateDevicesTree = yon_gtk_builder_get_widget(builder,"GrubUpdateDevicesTree"); + + widgets->GpartedSeparateButton = yon_gtk_builder_get_widget(builder,"GpartedSeparateButton"); + widgets->SeparateDevicesTree = yon_gtk_builder_get_widget(builder,"SeparateDevicesTree"); + widgets->SeparateSysSectionTree = yon_gtk_builder_get_widget(builder,"SeparateSysSectionTree"); + widgets->GpartedSeparateUserButton = yon_gtk_builder_get_widget(builder,"GpartedSeparateUserButton"); + widgets->SeparateUserDevicesTree = yon_gtk_builder_get_widget(builder,"SeparateUserDevicesTree"); + widgets->SeparateUserSysSectionTree = yon_gtk_builder_get_widget(builder,"SeparateUse-rSysSectionTree"); + + widgets->GpartedOSButton = yon_gtk_builder_get_widget(builder,"GpartedOSButton"); + widgets->OSDevicesTree = yon_gtk_builder_get_widget(builder,"OSDevicesTree"); + widgets->OSSysSectionTree = yon_gtk_builder_get_widget(builder,"OSSysSectionTree"); + + widgets->GpartedUserdataButton = yon_gtk_builder_get_widget(builder,"GpartedUserdataButton"); + widgets->UserdataDevicesTree = yon_gtk_builder_get_widget(builder,"UserdataDevicesTree"); + widgets->UserdataSysSectionTree = yon_gtk_builder_get_widget(builder,"UserdataSysSectionTree"); + widgets->LanguagesList = GTK_LIST_STORE(gtk_builder_get_object(builder,"LanguagesList")); widgets->LanguagesFilter = GTK_TREE_MODEL(gtk_builder_get_object(builder,"LanguagesFilter")); widgets->LayoutsFilter = GTK_TREE_MODEL(gtk_builder_get_object(builder,"LayoutsFilter")); @@ -1149,6 +1342,7 @@ main_window *yon_main_window_complete(){ g_signal_connect(G_OBJECT(widgets->InstallationNearSysDevicesTree),"cursor-changed",G_CALLBACK(on_near_installation_device_changed),widgets); g_signal_connect(G_OBJECT(widgets->SamePlaceDeviceTree),"cursor-changed",G_CALLBACK(on_near_installation_device_changed),widgets); + g_signal_connect(G_OBJECT(widgets->ConfigurationModeMenuItem),"toggled",G_CALLBACK(on_configuration_mode_switch),widgets); g_signal_connect(G_OBJECT(widgets->DocumentationMenuItem),"activate",G_CALLBACK(on_open_documentation_confirmation),widgets); g_signal_connect(G_OBJECT(widgets->AboutMenuItem),"activate",G_CALLBACK(on_about),widgets); diff --git a/source/ubinstall-gtk.h b/source/ubinstall-gtk.h index 707b82e..10d3858 100755 --- a/source/ubinstall-gtk.h +++ b/source/ubinstall-gtk.h @@ -75,7 +75,7 @@ NULL #define AUTOINSTALL_TYPE_INSTALL "AUTOINSTALL[install_type]" #define AUTOINSTALL_DEVICE "AUTOINSTALL[device]" -#define AUTOSTART_PARTS "AUTOINSTALL[part]" +#define part_parameter "AUTOINSTALL[part]" #define user_name_parameter "AUTOINSTALL[user_name]" #define user_name_parameter_command "ubconfig --source global get [autoinstall] AUTOINSTALL[user_name]" @@ -120,7 +120,7 @@ NULL #define AUTOINSTALL_TYPE_INSTALL_command "ubconfig --source global get autoinstall AUTOINSTALL[install_type]" #define AUTOINSTALL_DEVICE_command "ubconfig --source global get autoinstall AUTOINSTALL[device]" -#define AUTOSTART_PARTS_command "ubconfig --source global get autoinstall AUTOINSTALL[part]" +#define part_parameter_command "ubconfig --source global get autoinstall AUTOINSTALL[part]" #define PASSWORD_DEFAULT "ublinux" @@ -155,8 +155,11 @@ enum YON_PAGES { YON_PAGE_OPTIONS_GRUB_INSTALL, YON_PAGE_OPTIONS_GRUB_UPDATE, YON_PAGE_OPTIONS_SEPARATE, + YON_PAGE_OPTIONS_SEPARATE_USRDATA, YON_PAGE_OPTIONS_OS_ONLY, - YON_PAGE_INSTALL_ERROR + YON_PAGE_OPTIONS_USRDATA_ONLY, + YON_PAGE_INSTALL_ERROR, + YON_PAGE_CONFIGURE_END }; typedef struct { @@ -182,6 +185,7 @@ typedef struct { GThread *config_save_thread; GThread *install_thread; guint progress_thread; + int configure_mode; } config; typedef struct { @@ -274,6 +278,7 @@ typedef struct { GtkWidget *GpartedNearButton; GtkWidget *GpartedSameButton; + GtkWidget *ConfigurationModeMenuItem; GtkWidget *AboutMenuItem; GtkWidget *DocumentationMenuItem; @@ -281,6 +286,33 @@ typedef struct { GtkWidget *CommonInstallationDevicesTree; GtkWidget *AdditionalSoftwareTree; + + GtkWidget *GrubInstallRadio; + GtkWidget *GrubUpdateRadio; + GtkWidget *SeparateRadio; + GtkWidget *OSRadio; + GtkWidget *UserDataOnlyRadio; + + GtkWidget *GpartedGrubInstallButton; + GtkWidget *GrubInstallDevicesTree; + + GtkWidget *GpartedGrubUpdateButton; + GtkWidget *GrubUpdateDevicesTree; + + GtkWidget *GpartedSeparateButton; + GtkWidget *SeparateDevicesTree; + GtkWidget *SeparateSysSectionTree; + GtkWidget *GpartedSeparateUserButton; + GtkWidget *SeparateUserDevicesTree; + GtkWidget *SeparateUserSysSectionTree; + + GtkWidget *GpartedOSButton; + GtkWidget *OSDevicesTree; + GtkWidget *OSSysSectionTree; + + GtkWidget *GpartedUserdataButton; + GtkWidget *UserdataDevicesTree; + GtkWidget *UserdataSysSectionTree; GtkTreeModel *LanguagesFilter; GtkTreeModel *LayoutsFilter; diff --git a/source/ubl-strings.h b/source/ubl-strings.h index 84a4a37..ab2ed2f 100644 --- a/source/ubl-strings.h +++ b/source/ubl-strings.h @@ -68,6 +68,19 @@ #define INSTALLATION_PARAMETERS_LABEL _("Installation parameters") +#define ADVANCED_INSTALLATION_HEAD_LABEL _("Advanced installation mode") +#define ADVANCED_INSTALLATION_LABEL _("Installing OS files, user data on different partitions, creating RAID, etc.") +#define ADVANCED_INSTALLATION_ATTENTION_LABEL _("Attention! The selected OC UBLinux components will be installed\nseparately into the selected partition.") +#define GRUB_INSTALL_HEAD_LABEL _("GRUB install") +#define GRUB_INSTALL_LABEL _("Install the GRUB bootloader") +#define GRUB_UPDATE_HEAD_LABEL _("GRUB update") +#define GRUN_UPDATE_LABEL _("Update (reinstall) the GRUB bootloader") +#define SEPARATE_INSTALL_HEAD_LABEL _("Separate installation") +#define SEPARATE_INSTALL_LABEL _("Installing OS components and user data on different disk partitions") +#define OS_ONLY_HEAD_LABEL _("OS only") +#define OS_ONLY_LABEL _("Installing only OS components without user data") +#define USER_DATA_HEAD_LABEL _("User data only") +#define USER_DATA_LABEL _("Installing only user data without OS components") #define KEYBOARD__LABEL _("Keyboard layout language") diff --git a/ubinstall-gtk.glade b/ubinstall-gtk.glade index 877c6dc..76dd6c9 100644 --- a/ubinstall-gtk.glade +++ b/ubinstall-gtk.glade @@ -1,6 +1,6 @@ - + @@ -81,6 +81,21 @@ False com.ublinux.libublsettingsui-gtk3.properties-symbolic + + True + False + com.ublinux.libublsettingsui-gtk3.properties-symbolic + + + True + False + com.ublinux.libublsettingsui-gtk3.properties-symbolic + + + True + False + com.ublinux.libublsettingsui-gtk3.properties-symbolic + True False @@ -91,11 +106,26 @@ False com.ublinux.libublsettingsui-gtk3.trash-symbolic + + True + False + com.ublinux.libublsettingsui-gtk3.properties-symbolic + + + True + False + com.ublinux.libublsettingsui-gtk3.properties-symbolic + True False com.ublinux.libublsettingsui-gtk3.properties-symbolic + + True + False + com.ublinux.libublsettingsui-gtk3.properties-symbolic + True False @@ -129,6 +159,14 @@ True False False + + + True + False + Configuration mode + True + + True @@ -867,6 +905,7 @@ and help you install UBLinux on your computer + True True False True @@ -880,7 +919,7 @@ and help you install UBLinux on your computer True False - gtk-missing-image + /com/ublinux/images/manual_install_disk.png False @@ -1097,6 +1136,9 @@ and help you install UBLinux on your computer True AdditionalSoftwareList 0 + + + Chosen @@ -1225,6 +1267,9 @@ and help you install UBLinux on your computer True AdditionalSoftwareList 0 + + + Chosen @@ -1875,6 +1920,9 @@ and help you install UBLinux on your computer True LayoutsFilter 0 + + + Layout @@ -2626,6 +2674,9 @@ or continue working in the UBLinux Live environment. True DevicesList 0 + + + Device @@ -3004,6 +3055,9 @@ installed. True DevicesList 0 + + + Device @@ -3105,6 +3159,9 @@ installed. True PartitionsList 0 + + + Section @@ -3559,6 +3616,9 @@ installed. True DevicesList 0 + + + Device @@ -3649,6 +3709,9 @@ installed. True PartitionsList 0 + + + Section @@ -3903,7 +3966,7 @@ installed. True False - gtk-missing-image + /com/ublinux/images/manual_install_disk.png False @@ -3921,7 +3984,7 @@ installed. True False - Additional installation options + Advanced installation mode 0 @@ -3937,7 +4000,7 @@ installed. True False - Separate installation of bootloader, system files, user data, etc. + Installing OS files, user data on different partitions, creating RAID, etc. 0 @@ -3988,7 +4051,7 @@ separately into the selected partition. vertical 5 - + True True False @@ -4021,7 +4084,7 @@ separately into the selected partition. True False - Installing GRUB + GRUB install 0 @@ -4064,12 +4127,13 @@ separately into the selected partition. - + True True False True True + GrubInstallRadio True @@ -4140,12 +4204,13 @@ separately into the selected partition. - + True True False True True + GrubInstallRadio True @@ -4216,12 +4281,13 @@ separately into the selected partition. - + True True False True True + GrubInstallRadio True @@ -4292,12 +4358,13 @@ separately into the selected partition. - + True True False True True + GrubInstallRadio True @@ -4394,7 +4461,7 @@ separately into the selected partition. True False - Install with more options + Advanced installation 15 @@ -4408,228 +4475,2070 @@ separately into the selected partition. vertical 5 - - True - False - Installation parameters - - - - - - - - False - True - 0 - - - - - - - - 16 - - - - - True - False - GRUB install - - - 16 - False - - - - - True - False - vertical - 5 - - - True - False - Installation parameters - - - - - - - - False - True - 0 - - - - - - - - - - - 17 - - - - - True - False - GRUB update - - - 17 - False - - - - - True - False - vertical - 5 - - - True - False - Installation parameters - - - - - - - - False - True - 0 - - - - - - - - 18 - - - - - True - False - Separate installation - - - 18 - False - - - - - True - False - vertical - 5 - - - True - False - Installation parameters - - - - - - - - False - True - 0 - - - - - - - - 19 - - - - - True - False - OS only - - - 19 - False - - - - - True - False - vertical - 5 - - - True - False - Installation error - - - - - - - - - False - True - 0 - - - - - False - - - False - True - 1 - - - - - True - False - end - Error - - - - - - - True - True - 2 - - - - + True False - start - Error has occured while installation process - center + vertical + 5 + + + True + False + Installation parameters + + + + + + + + False + True + 0 + + + + + True + True + + + True + False + + + True + False + vertical + 5 + + + True + False + vertical + 5 + + + True + False + 5 + + + True + False + /com/ublinux/images/clear_install_disk.png + + + False + True + 0 + + + + + True + False + vertical + 5 + + + True + False + GRUB install + 0 + + + + + + False + True + 0 + + + + + True + False + Install the GRUB bootloader + 0 + + + False + True + 1 + + + + + True + True + 1 + + + + + False + True + 0 + + + + + True + False + 5 + + + True + False + Select device: + 0 + + + False + True + 0 + + + + + True + True + True + image2 + + + + False + True + end + 1 + + + + + False + True + 1 + + + + + True + True + in + 128 + + + True + True + DevicesList + 0 + + + + + + Device + + + + 0 + + + + + + + Description + + + + 1 + + + + + + + Mark + + + + 2 + + + + + + + Size + + + + 3 + + + + + + + Free + + + + 4 + + + + + + + + + False + True + 2 + + + + + False + True + 0 + + + + + + + + + True + True + 1 + + + + + True + True + 1 + + + + + 16 + + + + + True + False + GRUB install + + + 16 + False + + + + + True + False + vertical + 5 + + + True + False + Installation parameters + + + + + + + + False + True + 0 + + + + + True + True + + + True + False + + + True + False + vertical + 5 + + + True + False + vertical + 5 + + + True + False + 5 + + + True + False + /com/ublinux/images/clear_install_disk.png + + + False + True + 0 + + + + + True + False + vertical + 5 + + + True + False + GRUB update + 0 + + + + + + False + True + 0 + + + + + True + False + Update (reinstall) the GRUB bootloader + 0 + + + False + True + 1 + + + + + True + True + 1 + + + + + False + True + 0 + + + + + True + False + 5 + + + True + False + Select device: + 0 + + + False + True + 0 + + + + + True + True + True + image3 + + + + False + True + end + 1 + + + + + False + True + 1 + + + + + True + True + in + 128 + + + True + True + DevicesList + 0 + + + + + + Device + + + + 0 + + + + + + + Description + + + + 1 + + + + + + + Mark + + + + 2 + + + + + + + Size + + + + 3 + + + + + + + Free + + + + 4 + + + + + + + + + False + True + 2 + + + + + False + True + 0 + + + + + + + + + True + True + 1 + + + + + 17 + + + + + True + False + GRUB update + + + 17 + False + + + + + True + False + vertical + 5 + + + True + False + Installation parameters + + + + + + + + False + True + 0 + + + + + True + True + + + True + False + + + True + False + vertical + 5 + + + True + False + vertical + 5 + + + True + False + 5 + + + True + False + /com/ublinux/images/clear_install_disk.png + + + False + True + 0 + + + + + True + False + vertical + 5 + + + True + False + Separate installation + 0 + + + + + + False + True + 0 + + + + + True + False + Installing OS components and user data on different disk partitions + 0 + + + False + True + 1 + + + + + True + True + 1 + + + + + False + True + 0 + + + + + True + False + 5 + + + True + False + Select device: + 0 + + + False + True + 0 + + + + + True + True + True + image4 + + + + False + True + end + 1 + + + + + False + True + 1 + + + + + True + True + in + 128 + + + True + True + DevicesList + 0 + + + + + + Device + + + + 0 + + + + + + + Description + + + + 1 + + + + + + + Mark + + + + 2 + + + + + + + Size + + + + 3 + + + + + + + Free + + + + 4 + + + + + + + + + False + True + 2 + + + + + False + True + 0 + + + + + True + False + vertical + + + True + False + Choose a section: + 0 + + + False + True + 0 + + + + + True + True + in + 128 + + + True + True + PartitionsList + 0 + + + + + + Section + + + + 0 + + + + + + + Capacity + + + + 1 + + + + + + + Free space + + + + 2 + + + + + + + File system + + + + 3 + + + + + + + Mark + + + + 4 + + + + + + + + + False + True + 1 + + + + + False + True + 1 + + + + + + + + + True + True + 1 + + + + + 18 + + + + + True + False + Separate installation + + + 18 + False + + + + + True + False + vertical + 5 + + + True + False + Installation parameters + + + + + + + + False + True + 0 + + + + + True + True + + + True + False + + + True + False + vertical + 5 + + + True + False + vertical + 5 + + + True + False + 5 + + + True + False + /com/ublinux/images/clear_install_disk.png + + + False + True + 0 + + + + + True + False + vertical + 5 + + + True + False + Separate installation + 0 + + + + + + False + True + 0 + + + + + True + False + Installing OS components and user data on different disk partitions + 0 + + + False + True + 1 + + + + + True + True + 1 + + + + + False + True + 0 + + + + + True + False + 5 + + + True + False + Select device: + 0 + + + False + True + 0 + + + + + True + True + True + image10 + + + + False + True + end + 1 + + + + + False + True + 1 + + + + + True + True + in + 128 + + + True + True + DevicesList + 0 + + + + + + Device + + + + 0 + + + + + + + Description + + + + 1 + + + + + + + Mark + + + + 2 + + + + + + + Size + + + + 3 + + + + + + + Free + + + + 4 + + + + + + + + + False + True + 2 + + + + + False + True + 0 + + + + + True + False + vertical + + + True + False + Choose a section: + 0 + + + False + True + 0 + + + + + True + True + in + 128 + + + True + True + PartitionsList + 0 + + + + + + Section + + + + 0 + + + + + + + Capacity + + + + 1 + + + + + + + Free space + + + + 2 + + + + + + + File system + + + + 3 + + + + + + + Mark + + + + 4 + + + + + + + + + False + True + 1 + + + + + False + True + 1 + + + + + + + + + True + True + 1 + + + + + 19 + + + + + True + False + Separate installation - userdata + + + 19 + False + + + + + True + False + vertical + 5 + + + True + False + Installation parameters + + + + + + + + False + True + 0 + + + + + True + True + + + True + False + + + True + False + vertical + 5 + + + True + False + vertical + 5 + + + True + False + 5 + + + True + False + /com/ublinux/images/clear_install_disk.png + + + False + True + 0 + + + + + True + False + vertical + 5 + + + True + False + Separate installation + 0 + + + + + + False + True + 0 + + + + + True + False + Installing OS components and user data on different disk partitions + 0 + + + False + True + 1 + + + + + True + True + 1 + + + + + False + True + 0 + + + + + True + False + 5 + + + True + False + Select device: + 0 + + + False + True + 0 + + + + + True + True + True + image11 + + + + False + True + end + 1 + + + + + False + True + 1 + + + + + True + True + in + 128 + + + True + True + DevicesList + 0 + + + + + + Device + + + + 0 + + + + + + + Description + + + + 1 + + + + + + + Mark + + + + 2 + + + + + + + Size + + + + 3 + + + + + + + Free + + + + 4 + + + + + + + + + False + True + 2 + + + + + False + True + 0 + + + + + True + False + vertical + + + True + False + Choose a section: + 0 + + + False + True + 0 + + + + + True + True + in + 128 + + + True + True + PartitionsList + 0 + + + + + + Section + + + + 0 + + + + + + + Capacity + + + + 1 + + + + + + + Free space + + + + 2 + + + + + + + File system + + + + 3 + + + + + + + Mark + + + + 4 + + + + + + + + + False + True + 1 + + + + + False + True + 1 + + + + + + + + + True + True + 1 + + + + + 20 + + + + + True + False + OS only + + + 20 + False + + + + + True + False + vertical + 5 + + + True + False + Installation parameters + + + + + + + + False + True + 0 + + + + + True + True + + + True + False + + + True + False + vertical + 5 + + + True + False + vertical + 5 + + + True + False + 5 + + + True + False + /com/ublinux/images/clear_install_disk.png + + + False + True + 0 + + + + + True + False + vertical + 5 + + + True + False + Separate installation + 0 + + + + + + False + True + 0 + + + + + True + False + Installing OS components and user data on different disk partitions + 0 + + + False + True + 1 + + + + + True + True + 1 + + + + + False + True + 0 + + + + + True + False + 5 + + + True + False + Select device: + 0 + + + False + True + 0 + + + + + True + True + True + image12 + + + + False + True + end + 1 + + + + + False + True + 1 + + + + + True + True + in + 128 + + + True + True + DevicesList + 0 + + + + + + Device + + + + 0 + + + + + + + Description + + + + 1 + + + + + + + Mark + + + + 2 + + + + + + + Size + + + + 3 + + + + + + + Free + + + + 4 + + + + + + + + + False + True + 2 + + + + + False + True + 0 + + + + + True + False + vertical + + + True + False + Choose a section: + 0 + + + False + True + 0 + + + + + True + True + in + 128 + + + True + True + PartitionsList + 0 + + + + + + Section + + + + 0 + + + + + + + Capacity + + + + 1 + + + + + + + Free space + + + + 2 + + + + + + + File system + + + + 3 + + + + + + + Mark + + + + 4 + + + + + + + + + False + True + 1 + + + + + False + True + 1 + + + + + + + + + True + True + 1 + + + + + 21 + + + + + True + False + User data only + + + 21 + False + + + + + True + False + vertical + 5 + + + True + False + Installation error + + + + + + + + + False + True + 0 + + + + + False + + + False + True + 1 + + + + + True + False + end + Error + + + + + + + True + True + 2 + + + + + True + False + start + Error has occured while installation process + center True @@ -4643,7 +6552,7 @@ separately into the selected partition. - 20 + 22 @@ -4653,7 +6562,177 @@ separately into the selected partition. Installation error - 20 + 22 + False + + + + + True + False + vertical + 5 + + + True + False + Configuration + + + + + + + + + False + True + 0 + + + + + False + + + False + True + 1 + + + + + True + False + end + Installer configuration has been finished + + + + + + + True + True + 2 + + + + + True + False + start + Choose a save option on the header bar + center + True + + + + + + True + True + 3 + + + + + 23 + + + + + True + False + Configuration ended + + + 23 + False + + + + + True + False + vertical + 5 + + + True + False + Configuration + + + + + + + + + False + True + 0 + + + + + False + + + False + True + 1 + + + + + True + False + end + Configuration has been saved + + + + + + + True + True + 2 + + + + + True + False + start + You can safely exit configurator or return and create new configuration file. + center + True + + + + + + True + True + 3 + + + + + 24 + + + + + True + False + Configuration saved + + + 24 False From 0e73838222896e5a38fc0e752b320de358083e43 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 15 Jul 2024 12:03:31 +0600 Subject: [PATCH 4/5] Fixed AUTOINSTALL[part_size] parameter saving --- ubinstall-gtk.glade | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ubinstall-gtk.glade b/ubinstall-gtk.glade index 76dd6c9..37b4371 100644 --- a/ubinstall-gtk.glade +++ b/ubinstall-gtk.glade @@ -3270,9 +3270,9 @@ installed. False 1 - Mb - Gb - Tb + Mb + Gb + Tb From e1a2631f69e304d80d082e0a0ca503911850ce92 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 15 Jul 2024 14:32:09 +0600 Subject: [PATCH 5/5] Localisation update; fixes; toggle button selecrion changes --- source/ubinstall-gtk.c | 32 +++++++++++++++++++++++--------- source/ubl-strings.h | 2 ++ ubinstall-gtk-keyboard.glade | 4 ++-- ubinstall-gtk-language.glade | 4 ++-- ubinstall-gtk.glade | 2 +- ubinstall-gtk.pot | 4 ++++ ubinstall-gtk_ru.po | 8 ++++++-- 7 files changed, 40 insertions(+), 16 deletions(-) diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c index cd688b0..5fbb601 100644 --- a/source/ubinstall-gtk.c +++ b/source/ubinstall-gtk.c @@ -400,7 +400,6 @@ gboolean yon_installation_progress_update(void *data){ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets); void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){ - yon_switch_page_render(widgets,page>3?page-2:page); switch(page){ case YON_PAGE_WELCOME: { gtk_widget_set_sensitive(widgets->CancelInstallButton,0); @@ -412,24 +411,34 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){ gtk_image_set_from_icon_name(GTK_IMAGE(gtk_button_get_image(GTK_BUTTON(widgets->NextButton))),"com.ublinux.ubinstall-gtk.arrow-right-symbolic",GTK_ICON_SIZE_BUTTON); gtk_image_set_from_icon_name(GTK_IMAGE(gtk_button_get_image(GTK_BUTTON(widgets->CancelInstallButton))),"com.ublinux.ubinstall-gtk.circle-exit-symbolic",GTK_ICON_SIZE_BUTTON); gtk_widget_set_sensitive(widgets->ConfigurationModeMenuItem,1); + yon_switch_page_render(widgets,0); } break; case YON_PAGE_LICENCE:{ gtk_widget_set_sensitive(widgets->CancelInstallButton,1); gtk_widget_set_sensitive(widgets->BackButton,1); + yon_switch_page_render(widgets,1); } break; case YON_PAGE_REGION: { yon_image_resize_from_container(GTK_IMAGE(widgets->RegionImage), widgets->regions_original); - + yon_switch_page_render(widgets,4); } break; case YON_PAGE_KEYBOARD: { + yon_switch_page_render(widgets,5); yon_image_resize_from_container(GTK_IMAGE(widgets->KeyboardImage), widgets->keyboard_original); } break; + case YON_PAGE_OS_COMPONENTS: + case YON_PAGE_SOFTWARE: + case YON_PAGE_INSTALLATION_BEGIN: + yon_switch_page_render(widgets,3); + + break; case YON_PAGE_INSTALLATION:{ + yon_switch_page_render(widgets,3); gtk_widget_set_sensitive(widgets->BackButton,0); if (main_config.config_save_thread&&!main_config.configure_mode) g_thread_join(main_config.config_save_thread); @@ -441,17 +450,14 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){ gtk_widget_show(gtk_widget_get_parent(widgets->InstallationProgress)); } break; - case YON_PAGE_OS_COMPONENTS: - case YON_PAGE_SOFTWARE: - yon_switch_page_render(widgets,3); - break; - case YON_PAGE_USERS: + yon_switch_page_render(widgets,6); gtk_widget_set_sensitive(widgets->NextButton,1); break; case YON_PAGE_INSTALL_ERROR: case YON_PAGE_COMPLETION:{ + yon_switch_page_render(widgets,7); gtk_widget_set_sensitive(widgets->BackButton,0); gtk_widget_hide(gtk_widget_get_parent(widgets->PackageInstallationProgress)); gtk_widget_hide(widgets->InstallationLabel); @@ -466,9 +472,17 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){ } break; + case YON_PAGE_SECTIONS: case YON_PAGE_INSTALL_COMMON: case YON_PAGE_INSTALL_SEPARATE: - case YON_PAGE_INSTALL_SAME_PARTITION: { + case YON_PAGE_INSTALL_SAME_PARTITION: + case YON_PAGE_INSTALL_OPTIONS: + case YON_PAGE_OPTIONS_GRUB_INSTALL: + case YON_PAGE_OPTIONS_GRUB_UPDATE: + case YON_PAGE_OPTIONS_SEPARATE: + case YON_PAGE_OPTIONS_SEPARATE_USRDATA: + case YON_PAGE_OPTIONS_OS_ONLY: + case YON_PAGE_OPTIONS_USRDATA_ONLY: { yon_switch_page_render(widgets,2); } } @@ -1127,7 +1141,7 @@ void on_near_installation_device_changed(GtkWidget *self, main_window *widgets){ free_space_string = yon_char_append(yon_char_from_float(free_space)," "); free_space_string[strlen(free_space_string)-1]=json_object_get_string(size)[strlen(json_object_get_string(size))-1]; } - gtk_spin_button_set_value(GTK_SPIN_BUTTON(widgets->InstallationNearSizeSpin),0.0); + // gtk_spin_button_set_value(GTK_SPIN_BUTTON(widgets->InstallationNearSizeSpin),0.0); gtk_adjustment_set_upper(gtk_spin_button_get_adjustment(GTK_SPIN_BUTTON(widgets->InstallationNearSizeSpin)),0.0); gtk_list_store_append(widgets->PartitionsList,&iter); gtk_list_store_set(widgets->PartitionsList,&iter,0,json_object_get_string(path),1,json_object_get_string(size),2,free_space_string,3,json_object_get_string(fstype),-1); diff --git a/source/ubl-strings.h b/source/ubl-strings.h index ab2ed2f..e31411d 100644 --- a/source/ubl-strings.h +++ b/source/ubl-strings.h @@ -131,5 +131,7 @@ #define INSTALLATION_ERROR _("Installation error") #define ATTENTION_NEXT_LABEL _("Attention! The UBLinux OS will be installed on the selected partition with OS already installed. All user data will be saved.") +#define INSTALLATION_OPTIONS_LABEL _("Installation options") + #define ERROR_HEAD_LABEL _("Error") #define ERROR_LABEL _("Error has occured while installation process") \ No newline at end of file diff --git a/ubinstall-gtk-keyboard.glade b/ubinstall-gtk-keyboard.glade index bbfee24..c5f6ad6 100644 --- a/ubinstall-gtk-keyboard.glade +++ b/ubinstall-gtk-keyboard.glade @@ -8,7 +8,7 @@ False True 800 - com.ublinux.libublsettingsui-gtk3 + com.ublinux.ubinstall-gtk True @@ -123,7 +123,7 @@ True False 32 - com.ublinux.ubinstall-gtk-gui + com.ublinux.ubinstall-gtk diff --git a/ubinstall-gtk-language.glade b/ubinstall-gtk-language.glade index 2c3886b..d9d5636 100644 --- a/ubinstall-gtk-language.glade +++ b/ubinstall-gtk-language.glade @@ -18,7 +18,7 @@ False True 800 - com.ublinux.ubinstall-gui + com.ublinux.ubinstall-gtk True @@ -134,7 +134,7 @@ True False 32 - com.ublinux.ubinstall-gtk-gui + com.ublinux.ubinstall-gtk diff --git a/ubinstall-gtk.glade b/ubinstall-gtk.glade index 37b4371..93db897 100644 --- a/ubinstall-gtk.glade +++ b/ubinstall-gtk.glade @@ -73,6 +73,7 @@ 100 + 16 1 10 @@ -905,7 +906,6 @@ and help you install UBLinux on your computer - True True False True diff --git a/ubinstall-gtk.pot b/ubinstall-gtk.pot index ee1a341..d098b31 100644 --- a/ubinstall-gtk.pot +++ b/ubinstall-gtk.pot @@ -470,6 +470,10 @@ msgstr "" msgid "Attention! The UBLinux OS will be installed on the selected partition with OS already installed. All user data will be saved." msgstr "" +#: source/ubl-strings.h:134 +msgid "Installation options" +msgstr "" + #: source/ubl-strings.h:102 msgid "Error" msgstr "" diff --git a/ubinstall-gtk_ru.po b/ubinstall-gtk_ru.po index 0684f71..8335e1e 100644 --- a/ubinstall-gtk_ru.po +++ b/ubinstall-gtk_ru.po @@ -441,11 +441,11 @@ msgstr "Тип ФС" #: source/ubl-strings.h:103 msgid "Default (L_Alt + L_Shift)" -msgstr "По умолчанию ((L_Alt + L_Shift))" +msgstr "По умолчанию (L_Alt + L_Shift)" #: source/ubl-strings.h:104 msgid "Default (Regular 105-key)" -msgstr "По умолчанию ((Regular 105-key))" +msgstr "По умолчанию (Обычная 105-клавишная)" #: source/ubl-strings.h:102 msgid "Installation configuration has ended" @@ -487,6 +487,10 @@ msgstr "Ошибка установки" msgid "Attention! The UBLinux OS will be installed on the selected partition with OS already installed. All user data will be saved." msgstr "Внимание! ОС UBLinux будет установлена в выбранный раздел. Если не менять тип ФС и не форматировать, все данные на разделе будут сохранены" +#: source/ubl-strings.h:134 +msgid "Installation options" +msgstr "Параметры установки" + #: source/ubl-strings.h:102 msgid "Error" msgstr "Ошибка"