From b377af8977d583237b547e3828f782e694858dfd Mon Sep 17 00:00:00 2001 From: Ivan Dmitrievich Yartsev Date: Mon, 1 Dec 2025 13:32:29 +0600 Subject: [PATCH] Removed pacman DB update when launched not from root --- source/ubl-settings-kernel.c | 93 ++++++++++++++++++------------------ 1 file changed, 47 insertions(+), 46 deletions(-) diff --git a/source/ubl-settings-kernel.c b/source/ubl-settings-kernel.c index 3ecbc21..187df69 100644 --- a/source/ubl-settings-kernel.c +++ b/source/ubl-settings-kernel.c @@ -540,23 +540,23 @@ gboolean on_command_execute_success(GtkWidget *,gint status,main_window *widgets for_dictionaries(dict,main_config.kernel_tabs){ if (!getuid()){ kernels_tab *tab = (kernels_tab*)dict->data; - gtk_widget_set_sensitive(tab->update_module_button,!tab->module_updated); - gtk_widget_set_sensitive(tab->update_package_button,!tab->package_updated); - gtk_widget_set_sensitive(tab->install_module_button,1); - gtk_widget_set_sensitive(tab->install_package_button,1); - gtk_widget_set_sensitive(tab->remove_module_button,1); - gtk_widget_set_sensitive(tab->remove_package_button,1); + if (tab->update_module_button) gtk_widget_set_sensitive(tab->update_module_button,!tab->module_updated); + if (tab->update_package_button) gtk_widget_set_sensitive(tab->update_package_button,!tab->package_updated); + if (tab->install_module_button) gtk_widget_set_sensitive(tab->install_module_button,1); + if (tab->install_package_button) gtk_widget_set_sensitive(tab->install_package_button,1); + if (tab->remove_module_button) gtk_widget_set_sensitive(tab->remove_module_button,1); + if (tab->remove_package_button) gtk_widget_set_sensitive(tab->remove_package_button,1); } } for_dictionaries(dict,main_config.addition_tabs){ if (!getuid()){ kernels_tab *tab = (kernels_tab*)dict->data; - gtk_widget_set_sensitive(tab->update_module_button,!tab->module_updated); - gtk_widget_set_sensitive(tab->update_package_button,!tab->package_updated); - gtk_widget_set_sensitive(tab->install_module_button,1); - gtk_widget_set_sensitive(tab->install_package_button,1); - gtk_widget_set_sensitive(tab->remove_module_button,1); - gtk_widget_set_sensitive(tab->remove_package_button,1); + if (tab->update_module_button) gtk_widget_set_sensitive(tab->update_module_button,!tab->module_updated); + if (tab->update_package_button) gtk_widget_set_sensitive(tab->update_package_button,!tab->package_updated); + if (tab->install_module_button) gtk_widget_set_sensitive(tab->install_module_button,1); + if (tab->install_package_button) gtk_widget_set_sensitive(tab->install_package_button,1); + if (tab->remove_module_button) gtk_widget_set_sensitive(tab->remove_module_button,1); + if (tab->remove_package_button) gtk_widget_set_sensitive(tab->remove_package_button,1); } } { @@ -584,22 +584,22 @@ void *yon_command_execute_async(char *command,main_window *widgets){ dictionary *dict = NULL; if (main_config.kernel_tabs){ for_dictionaries(dict,main_config.kernel_tabs){ - gtk_widget_set_sensitive(((kernels_tab*)dict->data)->update_module_button,0); - gtk_widget_set_sensitive(((kernels_tab*)dict->data)->update_package_button,0); - gtk_widget_set_sensitive(((kernels_tab*)dict->data)->install_module_button,0); - gtk_widget_set_sensitive(((kernels_tab*)dict->data)->install_package_button,0); - gtk_widget_set_sensitive(((kernels_tab*)dict->data)->remove_module_button,0); - gtk_widget_set_sensitive(((kernels_tab*)dict->data)->remove_package_button,0); + if (((kernels_tab*)dict->data)->update_module_button) gtk_widget_set_sensitive(((kernels_tab*)dict->data)->update_module_button,0); + if (((kernels_tab*)dict->data)->update_package_button) gtk_widget_set_sensitive(((kernels_tab*)dict->data)->update_package_button,0); + if (((kernels_tab*)dict->data)->install_module_button) gtk_widget_set_sensitive(((kernels_tab*)dict->data)->install_module_button,0); + if (((kernels_tab*)dict->data)->install_package_button) gtk_widget_set_sensitive(((kernels_tab*)dict->data)->install_package_button,0); + if (((kernels_tab*)dict->data)->remove_module_button) gtk_widget_set_sensitive(((kernels_tab*)dict->data)->remove_module_button,0); + if (((kernels_tab*)dict->data)->remove_package_button) gtk_widget_set_sensitive(((kernels_tab*)dict->data)->remove_package_button,0); } } if (main_config.addition_tabs){ for_dictionaries(dict,main_config.addition_tabs){ - gtk_widget_set_sensitive(((kernels_tab*)dict->data)->update_module_button,0); - gtk_widget_set_sensitive(((kernels_tab*)dict->data)->update_package_button,0); - gtk_widget_set_sensitive(((kernels_tab*)dict->data)->install_module_button,0); - gtk_widget_set_sensitive(((kernels_tab*)dict->data)->install_package_button,0); - gtk_widget_set_sensitive(((kernels_tab*)dict->data)->remove_module_button,0); - gtk_widget_set_sensitive(((kernels_tab*)dict->data)->remove_package_button,0); + if (((kernels_tab*)dict->data)->update_module_button) gtk_widget_set_sensitive(((kernels_tab*)dict->data)->update_module_button,0); + if (((kernels_tab*)dict->data)->update_package_button) gtk_widget_set_sensitive(((kernels_tab*)dict->data)->update_package_button,0); + if (((kernels_tab*)dict->data)->install_module_button) gtk_widget_set_sensitive(((kernels_tab*)dict->data)->install_module_button,0); + if (((kernels_tab*)dict->data)->install_package_button) gtk_widget_set_sensitive(((kernels_tab*)dict->data)->install_package_button,0); + if (((kernels_tab*)dict->data)->remove_module_button) gtk_widget_set_sensitive(((kernels_tab*)dict->data)->remove_module_button,0); + if (((kernels_tab*)dict->data)->remove_package_button) gtk_widget_set_sensitive(((kernels_tab*)dict->data)->remove_package_button,0); } } gtk_button_clicked(GTK_BUTTON(widgets->MoreButton)); @@ -1174,11 +1174,11 @@ kernels_tab *yon_tab_row_new(GtkListBox *target, char *target_string, main_windo if(getuid()){ - gtk_widget_set_sensitive(tab->launch_button,0); - gtk_widget_set_sensitive(tab->remove_module_button,0); - gtk_widget_set_sensitive(tab->install_module_button,0); - gtk_widget_set_sensitive(tab->remove_package_button,0); - gtk_widget_set_sensitive(tab->install_package_button,0); + if (tab->launch_button) gtk_widget_set_sensitive(tab->launch_button,0); + if (tab->remove_module_button) gtk_widget_set_sensitive(tab->remove_module_button,0); + if (tab->install_module_button) gtk_widget_set_sensitive(tab->install_module_button,0); + if (tab->remove_package_button) gtk_widget_set_sensitive(tab->remove_package_button,0); + if (tab->install_package_button) gtk_widget_set_sensitive(tab->install_package_button,0); } tab->module_installed=-1; tab->package_installed=-1; @@ -1284,11 +1284,11 @@ additions_kernels_tab *yon_additions_tab_row_new(GtkListBox *target, char *targe g_signal_connect(G_OBJECT(tab->package_label),"activate-link",G_CALLBACK(on_info_clicked),tab); if(getuid()){ - gtk_widget_set_sensitive(tab->launch_button,0); - gtk_widget_set_sensitive(tab->remove_module_button,0); - gtk_widget_set_sensitive(tab->install_module_button,0); - gtk_widget_set_sensitive(tab->remove_package_button,0); - gtk_widget_set_sensitive(tab->install_package_button,0); + if (tab->launch_button) gtk_widget_set_sensitive(tab->launch_button,0); + if (tab->remove_module_button) gtk_widget_set_sensitive(tab->remove_module_button,0); + if (tab->install_module_button) gtk_widget_set_sensitive(tab->install_module_button,0); + if (tab->remove_package_button) gtk_widget_set_sensitive(tab->remove_package_button,0); + if (tab->install_package_button) gtk_widget_set_sensitive(tab->install_package_button,0); } gtk_list_box_insert(target,tab->main_box,-1); @@ -1615,24 +1615,25 @@ void yon_main_window_complete(main_window *widgets){ } yon_root_button_setup((template_main_window*)widgets,main_config.launch_arguments,main_config.launch_size); + gtk_progress_bar_set_pulse_step(GTK_PROGRESS_BAR(widgets->InstallationProgress),0.1); + gtk_paned_add2(GTK_PANED(widgets->TerminalPaned),widgets->TerminalRevealer); if (getuid()){ gtk_widget_set_sensitive(widgets->BuildingButton,0); - } - gtk_progress_bar_set_pulse_step(GTK_PROGRESS_BAR(widgets->InstallationProgress),0.1); - GdkRGBA rgba; - vte_terminal_get_color_background_for_draw(VTE_TERMINAL(widgets->InstallTerminal),&rgba); - vte_terminal_set_color_cursor(VTE_TERMINAL(widgets->InstallTerminal),&rgba); + } else { + GdkRGBA rgba; + vte_terminal_get_color_background_for_draw(VTE_TERMINAL(widgets->InstallTerminal),&rgba); + vte_terminal_set_color_cursor(VTE_TERMINAL(widgets->InstallTerminal),&rgba); - glong columns = vte_terminal_get_column_count(VTE_TERMINAL(widgets->InstallTerminal)); - vte_terminal_set_size(VTE_TERMINAL(widgets->InstallTerminal),columns,20); + glong columns = vte_terminal_get_column_count(VTE_TERMINAL(widgets->InstallTerminal)); + vte_terminal_set_size(VTE_TERMINAL(widgets->InstallTerminal),columns,20); - gtk_paned_add2(GTK_PANED(widgets->TerminalPaned),widgets->TerminalRevealer); - on_update_clicked(NULL,widgets); - yon_save_window_set_postsave_function(on_save_done,widgets); + yon_save_window_set_postsave_function(on_save_done,widgets); - gtk_button_clicked(GTK_BUTTON(widgets->MoreButton)); - yon_terminal_integrated_start(widgets->InstallTerminal,pacman_update_command); + gtk_button_clicked(GTK_BUTTON(widgets->MoreButton)); + yon_terminal_integrated_start(widgets->InstallTerminal,pacman_update_command); + } + on_update_clicked(NULL,widgets); yon_gtk_widget_set_scroll_window_for_scroll(gtk_widget_get_parent(widgets->InstallTerminal),GTK_SCROLLBAR(widgets->TerminalScroll)); } yon_load_proceed(YON_CONFIG_LOCAL); -- 2.35.1