import CS gnome-settings-daemon-40.0.1-24.el9
This commit is contained in:
parent
f41816d644
commit
d1ac46ccc7
95
SOURCES/subman-delay-startup-notification-by-30min.patch
Normal file
95
SOURCES/subman-delay-startup-notification-by-30min.patch
Normal file
@ -0,0 +1,95 @@
|
||||
From b3cb5223cbc0d1c6bb71a841d467dea7e54a1bc3 Mon Sep 17 00:00:00 2001
|
||||
From: Felipe Borges <felipeborges@gnome.org>
|
||||
Date: Mon, 20 Oct 2025 12:32:43 +0200
|
||||
Subject: [PATCH] subman: Delay startup notification by 30 minutes
|
||||
|
||||
So that we don't disturb users during initial-setup/onboarding.
|
||||
|
||||
Resolves: RHEL-4094
|
||||
---
|
||||
plugins/subman/gsd-subscription-manager.c | 29 ++++++++++++++++++++++-
|
||||
1 file changed, 28 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/plugins/subman/gsd-subscription-manager.c b/plugins/subman/gsd-subscription-manager.c
|
||||
index 09a96a3a..2a3f5504 100644
|
||||
--- a/plugins/subman/gsd-subscription-manager.c
|
||||
+++ b/plugins/subman/gsd-subscription-manager.c
|
||||
@@ -39,6 +39,8 @@
|
||||
#define GSD_SUBSCRIPTION_DBUS_PATH GSD_DBUS_PATH "/Subscription"
|
||||
#define GSD_SUBSCRIPTION_DBUS_INTERFACE GSD_DBUS_BASE_INTERFACE ".Subscription"
|
||||
|
||||
+#define STARTUP_NOTIFICATION_DELAY (30 * 60)
|
||||
+
|
||||
static const gchar introspection_xml[] =
|
||||
"<node>"
|
||||
" <interface name='org.gnome.SettingsDaemon.Subscription'>"
|
||||
@@ -84,6 +86,8 @@ struct GsdSubscriptionManagerPrivate
|
||||
NotifyNotification *notification_registration_required;
|
||||
GsdSubmanSubscriptionStatus subscription_status;
|
||||
GsdSubmanSubscriptionStatus subscription_status_last;
|
||||
+
|
||||
+ guint startup_registration_required_notification_id;
|
||||
};
|
||||
|
||||
enum {
|
||||
@@ -510,6 +514,15 @@ _show_notification (GsdSubscriptionManager *manager, _NotifyKind notify_kind)
|
||||
g_timer_reset (priv->timer_last_notified);
|
||||
}
|
||||
|
||||
+static void _client_maybe__show_notification (GsdSubscriptionManager *manager);
|
||||
+static gboolean
|
||||
+_startup_registration_required_notification_cb (GsdSubscriptionManager *manager)
|
||||
+{
|
||||
+ _client_maybe__show_notification (manager);
|
||||
+
|
||||
+ return FALSE;
|
||||
+}
|
||||
+
|
||||
static void
|
||||
_client_maybe__show_notification (GsdSubscriptionManager *manager)
|
||||
{
|
||||
@@ -603,7 +616,14 @@ _client_maybe__show_notification (GsdSubscriptionManager *manager)
|
||||
|
||||
/* startup */
|
||||
if (!was_read && is_read && priv->subscription_status == GSD_SUBMAN_SUBSCRIPTION_STATUS_UNKNOWN) {
|
||||
- _show_notification (manager, _NOTIFY_REGISTRATION_REQUIRED);
|
||||
+ if (priv->startup_registration_required_notification_id == 0) {
|
||||
+ priv->startup_registration_required_notification_id =
|
||||
+ g_timeout_add_seconds (STARTUP_NOTIFICATION_DELAY,
|
||||
+ (GSourceFunc) _startup_registration_required_notification_cb, manager);
|
||||
+ } else {
|
||||
+ _show_notification (manager, _NOTIFY_REGISTRATION_REQUIRED);
|
||||
+ }
|
||||
+
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1161,11 +1181,13 @@ static void
|
||||
gsd_subscription_manager_finalize (GObject *object)
|
||||
{
|
||||
GsdSubscriptionManager *manager;
|
||||
+ GsdSubscriptionManagerPrivate *priv;
|
||||
|
||||
g_return_if_fail (object != NULL);
|
||||
g_return_if_fail (GSD_IS_SUBSCRIPTION_MANAGER (object));
|
||||
|
||||
manager = GSD_SUBSCRIPTION_MANAGER (object);
|
||||
+ priv = manager->priv = GSD_SUBSCRIPTION_MANAGER_GET_PRIVATE (manager);
|
||||
|
||||
gsd_subscription_manager_stop (manager);
|
||||
|
||||
@@ -1174,6 +1196,11 @@ gsd_subscription_manager_finalize (GObject *object)
|
||||
g_clear_object (&manager->priv->bus_cancellable);
|
||||
}
|
||||
|
||||
+ if (priv->startup_registration_required_notification_id) {
|
||||
+ g_source_remove (priv->startup_registration_required_notification_id);
|
||||
+ priv->startup_registration_required_notification_id = 0;
|
||||
+ }
|
||||
+
|
||||
g_clear_pointer (&manager->priv->installed_products, g_ptr_array_unref);
|
||||
g_clear_pointer (&manager->priv->introspection_data, g_dbus_node_info_unref);
|
||||
g_clear_object (&manager->priv->connection);
|
||||
--
|
||||
2.34.1
|
||||
|
||||
@ -11,7 +11,7 @@
|
||||
|
||||
Name: gnome-settings-daemon
|
||||
Version: 40.0.1
|
||||
Release: 22%{?dist}
|
||||
Release: 24%{?dist}
|
||||
Summary: The daemon sharing settings from GNOME to GTK+/KDE applications
|
||||
|
||||
License: GPLv2+
|
||||
@ -85,6 +85,9 @@ Patch00010: subman-build-option.patch
|
||||
# https://issues.redhat.com/browse/RHEL-11910
|
||||
Patch00011: housekeeping-disambiguate-mount-names-in-notifications.patch
|
||||
|
||||
# https://issues.redhat.com/browse/RHEL-4094
|
||||
Patch00012: subman-delay-startup-notification-by-30min.patch
|
||||
|
||||
%description
|
||||
A daemon to share settings from GNOME to other applications. It also
|
||||
handles global keybindings, as well as a number of desktop-wide settings.
|
||||
@ -209,6 +212,14 @@ cp %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/glib-2.0/schemas
|
||||
%{_libdir}/pkgconfig/gnome-settings-daemon.pc
|
||||
|
||||
%changelog
|
||||
* Wed Oct 29 2025 Felipe Borges <feborges@redhat.com> - 40.0.1-24
|
||||
- Improve reliability of the startup registration notification
|
||||
Resolves: RHEL-4094
|
||||
|
||||
* Mon Oct 20 2025 Felipe Borges <feborges@redhat.com> - 40.0.1-23
|
||||
- Delay startup registration notification by 30 minutes
|
||||
Resolves: RHEL-4094
|
||||
|
||||
* Tue Mar 04 2025 Felipe Borges <feborges@redhat.com> - 40.0.1-22
|
||||
- Use mount path in "Low disk" notification when multiple mount points have same name
|
||||
Related: RHEL-11910
|
||||
|
||||
Loading…
Reference in New Issue
Block a user