Merge pull request 'Fixed packages saving' (#336) from YanTheKaller/ubinstall-gtk:master into master

Reviewed-on: #336
pull/341/head
Dmitry Razumov 1 month ago
commit c5746758fb

@ -15,12 +15,14 @@ int yon_kernel_save(main_window *widgets){
overall_size++; overall_size++;
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," ",","); if (gtk_widget_get_sensitive(row->InstallCheck)){
yon_config_append_elements(packages_parameter,append_str,","); char *append_str = yon_char_replace(row->modules," ",",");
free(append_str); yon_config_append_elements(packages_parameter,append_str,",");
active_size++; free(append_str);
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->EnableRadio))){ active_size++;
enabled_module = row->package; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->EnableRadio))){
enabled_module = row->package;
}
} }
} else { } else {
char *append_str = yon_char_replace(row->modules," ",","); char *append_str = yon_char_replace(row->modules," ",",");
@ -51,7 +53,9 @@ 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_elements(packages_parameter,row->modules,","); if (gtk_widget_get_sensitive(row->InstallCheck)){
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,",");
@ -368,7 +372,9 @@ 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_elements(packages_parameter,target,","); if (gtk_widget_get_sensitive(row->InstallCheck)){
yon_config_append_elements(packages_parameter,target,",");
}
} }
} else{ } else{
char *append_str = yon_char_replace(target," ",","); char *append_str = yon_char_replace(target," ",",");
@ -637,7 +643,7 @@ gboolean yon_pacman_fill(struct pacman_struct *pacman){
for (int i=0;i<size;i++){ for (int i=0;i<size;i++){
if (g_hash_table_contains(widgets->pacmanchosen,loaded[i])) continue; if (yon_char_is_empty(loaded[i])||g_hash_table_contains(widgets->pacmanchosen,loaded[i])) continue;
char *version = yon_packages_get_version(YON_PACKAGES_SYNC,loaded[i]); char *version = yon_packages_get_version(YON_PACKAGES_SYNC,loaded[i]);
char *description = yon_packages_get_description(YON_PACKAGES_SYNC,loaded[i]); char *description = yon_packages_get_description(YON_PACKAGES_SYNC,loaded[i]);
GtkTreeIter iter; GtkTreeIter iter;

@ -9,9 +9,11 @@ int yon_packages_tab_save(main_window *widgets){
for_iter(widgets->PackagesList,&parentiter){ for_iter(widgets->PackagesList,&parentiter){
for (int valid2 = gtk_tree_model_iter_children(GTK_TREE_MODEL(widgets->PackagesList),&subiter,&parentiter);valid2;valid2 = gtk_tree_model_iter_next(GTK_TREE_MODEL(widgets->PackagesList),&subiter)){ for (int valid2 = gtk_tree_model_iter_children(GTK_TREE_MODEL(widgets->PackagesList),&subiter,&parentiter);valid2;valid2 = gtk_tree_model_iter_next(GTK_TREE_MODEL(widgets->PackagesList),&subiter)){
int selectable, status; int selectable, status;
int sensitive=0;
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,4,&sensitive,-1);
if (selectable&&status){ if (selectable&&status){
yon_config_append_elements(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,",");
@ -19,7 +21,9 @@ int yon_packages_tab_save(main_window *widgets){
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_elements(packages_parameter,package,","); if (sensitive){
yon_config_append_elements(packages_parameter,package,",");
}
} else { } else {
yon_config_remove_elements(packages_parameter,package,","); yon_config_remove_elements(packages_parameter,package,",");
} }

@ -62,6 +62,12 @@ int yon_user_save(yon_user_struct *user){
yon_ubl_status_highlight_incorrect(user->PasswordEntry); yon_ubl_status_highlight_incorrect(user->PasswordEntry);
return 0; return 0;
} }
} else {
char *default_passwd = config(DEFAULTPASSWD_parameter);
if (yon_char_is_empty(default_passwd)){
default_passwd = config(DEFAULTPASSWD_system_parameter);
}
password = default_passwd;
} }
char *admin_uid = NULL; char *admin_uid = NULL;
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(user->AdminCheck))){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(user->AdminCheck))){
@ -189,6 +195,12 @@ void yon_user_init(main_window *widgets){
if (!users_size){ if (!users_size){
char *default_user = config(DEFAULTUSER_parameter); char *default_user = config(DEFAULTUSER_parameter);
char *default_passwd = config(DEFAULTPASSWD_parameter); char *default_passwd = config(DEFAULTPASSWD_parameter);
if (yon_char_is_empty(default_user)){
default_user = config(DEFAULTUSER_system_parameter);
}
if (yon_char_is_empty(default_passwd)){
default_passwd = config(DEFAULTPASSWD_system_parameter);
}
yon_user_struct *user = yon_user_struct_new(); yon_user_struct *user = yon_user_struct_new();
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(user->AdminCheck),1); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(user->AdminCheck),1);
g_signal_connect(G_OBJECT(user->AdminCheck),"clicked",G_CALLBACK(yon_user_admin_check),widgets); g_signal_connect(G_OBJECT(user->AdminCheck),"clicked",G_CALLBACK(yon_user_admin_check),widgets);

@ -269,8 +269,12 @@ layout && /description:/ {\
#define admuid_parameter_command "ubconfig --source global get [users] ADMUID" #define admuid_parameter_command "ubconfig --source global get [users] ADMUID"
#define DEFAULTUSER_parameter "AUTOINSTALL[ubconfig set [users] DEFAULTUSER]" #define DEFAULTUSER_parameter "AUTOINSTALL[ubconfig set [users] DEFAULTUSER]"
#define DEFAULTUSER_parameter_command "ubconfig --source global get [autoinstall] AUTOINSTALL['ubconfig set [users] DEFAULTUSER']" #define DEFAULTUSER_parameter_command "ubconfig --source global get [autoinstall] AUTOINSTALL['ubconfig set [users] DEFAULTUSER']"
#define DEFAULTUSER_system_parameter "DEFAULTUSER"
#define DEFAULTUSER_system_parameter_command "ubconfig --source global get [users] DEFAULTUSER"
#define DEFAULTPASSWD_parameter "AUTOINSTALL[ubconfig set [users] DEFAULTPASSWD]" #define DEFAULTPASSWD_parameter "AUTOINSTALL[ubconfig set [users] DEFAULTPASSWD]"
#define DEFAULTPASSWD_parameter_command "ubconfig --source global get [autoinstall] AUTOINSTALL['ubconfig set [users] DEFAULTPASSWD']" #define DEFAULTPASSWD_parameter_command "ubconfig --source global get [autoinstall] AUTOINSTALL['ubconfig set [users] DEFAULTPASSWD']"
#define DEFAULTPASSWD_system_parameter "DEFAULTPASSWD"
#define DEFAULTPASSWD_system_parameter_command "ubconfig --source global get [users] DEFAULTPASSWD"
#define SYSTEM_LANG_parameter "AUTOINSTALL['ubconfig set [locale] LANG']" #define SYSTEM_LANG_parameter "AUTOINSTALL['ubconfig set [locale] LANG']"
#define SYSTEM_LANG_parameter_command "ubconfig --source global get autoinstall AUTOINSTALL['ubconfig set [locale] LANG']" #define SYSTEM_LANG_parameter_command "ubconfig --source global get autoinstall AUTOINSTALL['ubconfig set [locale] LANG']"
@ -306,7 +310,7 @@ layout && /description:/ {\
#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)
#define config_get_default_command "ubconfig -ea --noconarg --source default get [autoinstall] AUTOINSTALL[*] -- get [locale] LANG -- get [users] ADMUID" #define config_get_default_command "ubconfig -ea --noconarg --source default get [autoinstall] AUTOINSTALL[*] -- get [locale] LANG -- get [users] ADMUID DEFAULTUSER DEFAULTPASSWD"
#define config_get_global_only_parameters "" #define config_get_global_only_parameters ""
#define config_get_local_only_parameters "" #define config_get_local_only_parameters ""

@ -41,10 +41,11 @@
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="spacing">5</property> <property name="spacing">5</property>
<child> <child>
<object class="GtkLabel"> <object class="GtkLabel" id="label1">
<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">Account name:</property> <property name="label" translatable="yes">Account name:</property>
<property name="xalign">1</property>
</object> </object>
<packing> <packing>
<property name="expand">False</property> <property name="expand">False</property>
@ -93,11 +94,11 @@
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="spacing">5</property> <property name="spacing">5</property>
<child> <child>
<object class="GtkLabel"> <object class="GtkLabel" id="label2">
<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">Login:</property> <property name="label" translatable="yes">Login:</property>
<property name="xalign">0</property> <property name="xalign">1</property>
</object> </object>
<packing> <packing>
<property name="expand">False</property> <property name="expand">False</property>
@ -144,11 +145,11 @@
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="spacing">5</property> <property name="spacing">5</property>
<child> <child>
<object class="GtkLabel"> <object class="GtkLabel" id="label3">
<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">Password:</property> <property name="label" translatable="yes">Password:</property>
<property name="xalign">0</property> <property name="xalign">1</property>
</object> </object>
<packing> <packing>
<property name="expand">False</property> <property name="expand">False</property>
@ -230,4 +231,11 @@
<class name="bggrey"/> <class name="bggrey"/>
</style> </style>
</object> </object>
<object class="GtkSizeGroup">
<widgets>
<widget name="label1"/>
<widget name="label2"/>
<widget name="label3"/>
</widgets>
</object>
</interface> </interface>

@ -5535,10 +5535,11 @@ Select a different installation source.</property>
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="spacing">5</property> <property name="spacing">5</property>
<child> <child>
<object class="GtkLabel"> <object class="GtkLabel" id="label20">
<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">Account name:</property> <property name="label" translatable="yes">Account name:</property>
<property name="xalign">1</property>
</object> </object>
<packing> <packing>
<property name="expand">False</property> <property name="expand">False</property>
@ -5573,11 +5574,11 @@ Select a different installation source.</property>
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="spacing">5</property> <property name="spacing">5</property>
<child> <child>
<object class="GtkLabel"> <object class="GtkLabel" id="label23">
<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">Login:</property> <property name="label" translatable="yes">Login:</property>
<property name="xalign">0</property> <property name="xalign">1</property>
</object> </object>
<packing> <packing>
<property name="expand">False</property> <property name="expand">False</property>
@ -5612,11 +5613,11 @@ Select a different installation source.</property>
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="spacing">5</property> <property name="spacing">5</property>
<child> <child>
<object class="GtkLabel"> <object class="GtkLabel" id="label24">
<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">Administrator password (root):</property> <property name="label" translatable="yes">Password:</property>
<property name="xalign">0</property> <property name="xalign">1</property>
</object> </object>
<packing> <packing>
<property name="expand">False</property> <property name="expand">False</property>
@ -10325,6 +10326,9 @@ separately into the selected partition.</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="model">DevicesList</property> <property name="model">DevicesList</property>
<property name="search-column">0</property> <property name="search-column">0</property>
<child internal-child="selection">
<object class="GtkTreeSelection"/>
</child>
<child> <child>
<object class="GtkTreeViewColumn"> <object class="GtkTreeViewColumn">
<child> <child>
@ -13600,6 +13604,9 @@ separately into the selected partition.</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="model">DevicesList</property> <property name="model">DevicesList</property>
<property name="search-column">0</property> <property name="search-column">0</property>
<child internal-child="selection">
<object class="GtkTreeSelection"/>
</child>
<child> <child>
<object class="GtkTreeViewColumn"> <object class="GtkTreeViewColumn">
<property name="title" translatable="yes">Device</property> <property name="title" translatable="yes">Device</property>
@ -13700,6 +13707,9 @@ separately into the selected partition.</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="model">PartitionsList</property> <property name="model">PartitionsList</property>
<property name="search-column">0</property> <property name="search-column">0</property>
<child internal-child="selection">
<object class="GtkTreeSelection"/>
</child>
<child> <child>
<object class="GtkTreeViewColumn"> <object class="GtkTreeViewColumn">
<property name="title" translatable="yes">Section</property> <property name="title" translatable="yes">Section</property>
@ -14627,6 +14637,13 @@ separately into the selected partition.</property>
<widget name="box5"/> <widget name="box5"/>
</widgets> </widgets>
</object> </object>
<object class="GtkSizeGroup" id="RootUserSizeGroup">
<widgets>
<widget name="label20"/>
<widget name="label23"/>
<widget name="label24"/>
</widgets>
</object>
<object class="GtkSizeGroup"> <object class="GtkSizeGroup">
<widgets> <widgets>
<widget name="label10"/> <widget name="label10"/>

Loading…
Cancel
Save