Try to start rhsm if it's not already running

Related: RHEL-20449
This commit is contained in:
Ray Strode 2024-01-18 11:26:36 -05:00
parent dd1c59366b
commit e2c73a0464
2 changed files with 71 additions and 35 deletions

View File

@ -11,7 +11,7 @@
Name: gnome-settings-daemon
Version: 40.0.1
Release: 15%{?dist}
Release: 16%{?dist}
Summary: The daemon sharing settings from GNOME to GTK+/KDE applications
License: GPLv2+
@ -197,6 +197,10 @@ cp %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/glib-2.0/schemas
%{_libdir}/pkgconfig/gnome-settings-daemon.pc
%changelog
* Thu Jan 18 2024 Ray Strode <rstrode@redhat.com> - 40.0.1-16
- Try to start rhsm if it's not already running
Related: RHEL-20449
* Tue Jan 09 2024 Ray Strode <rstrode@redhat.com> - 40.0.1-15
- Fix crashers in g-s-d and control-center related to
making subscription-manager a soft dep

View File

@ -1,4 +1,4 @@
From cb15eaa279060089692b76f1b6d5962316da0395 Mon Sep 17 00:00:00 2001
From 31123047c5e198f00c2e7ee35fe77d508100659a Mon Sep 17 00:00:00 2001
From: Richard Hughes <rhughes@redhat.com>
Date: Thu, 20 Aug 2020 11:16:09 -0400
Subject: [PATCH 01/21] subman: Add a new plugin to provide system subscription
@ -1780,7 +1780,7 @@ index 00000000..1ed3a0ea
2.43.0
From eda2516972d477b1dd0b11b39b8a0b71e855a0f9 Mon Sep 17 00:00:00 2001
From 401046df68e152ffd6bd0ec56bbc4361eb351b55 Mon Sep 17 00:00:00 2001
From: Kalev Lember <klember@redhat.com>
Date: Thu, 27 Jun 2019 16:12:00 +0200
Subject: [PATCH 02/21] subman: Add InstalledProducts dbus property for g-c-c
@ -2030,7 +2030,7 @@ index 08b13fa6..a8c18a26 100644
2.43.0
From 107343179097ef94005e6ff899062efaf02226a5 Mon Sep 17 00:00:00 2001
From 3c367361c1b5f695a3070ce8c6344b633da7fac5 Mon Sep 17 00:00:00 2001
From: Kalev Lember <klember@redhat.com>
Date: Fri, 28 Jun 2019 18:10:36 +0200
Subject: [PATCH 03/21] subman: Increase RHSM dbus call timeouts
@ -2108,7 +2108,7 @@ index b1ea48a3..2218abed 100644
2.43.0
From 06c8a5df4fc4b8f5d1416f9136a089dfe798d1ae Mon Sep 17 00:00:00 2001
From 5f57d9fff5dce2b06967cc5a1cd3328c072aa29d Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Thu, 20 Aug 2020 11:20:47 -0400
Subject: [PATCH 04/21] subman: Drop userlang field
@ -2199,7 +2199,7 @@ index a8c18a26..46f051a5 100644
2.43.0
From 27e4900370258157cda65f1853be678b82a8cc91 Mon Sep 17 00:00:00 2001
From 91ffe536f3117483c49b33f2277ab4a0683c556b Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Sun, 24 Jan 2021 15:04:17 -0500
Subject: [PATCH 05/21] subman: Use user locale for registration/subscription
@ -2296,7 +2296,7 @@ index 2218abed..5eadd20e 100644
2.43.0
From f1cd9399acf7fee95c3a98a8925dc0cfb89ce29d Mon Sep 17 00:00:00 2001
From e7dc41a1f82d3ec6daea40b01ff9e38a71748d96 Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Thu, 20 Aug 2020 13:34:19 -0400
Subject: [PATCH 06/21] subman: Handle subscription-manager giving invalid
@ -2425,7 +2425,7 @@ index 46f051a5..e2c16056 100644
2.43.0
From 80082d878426e782fd9c37083c632b1230ceba02 Mon Sep 17 00:00:00 2001
From 0bbb5038a22c10d1187e063a4fd02dfdfe149497 Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Tue, 25 Aug 2020 10:34:03 -0400
Subject: [PATCH 07/21] subman: Force re-subscribe if the admin already
@ -2503,7 +2503,7 @@ index 5eadd20e..bdcf42c4 100644
2.43.0
From c401d6947517af4e583efb58c27935f93e7d24e5 Mon Sep 17 00:00:00 2001
From ad7c4f5953a2954ea62790d906fd699da55cc965 Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Tue, 25 Aug 2020 16:20:42 -0400
Subject: [PATCH 08/21] subman: Don't send secrets through command line
@ -2753,7 +2753,7 @@ index bfd073b6..e4b4589d 100644
2.43.0
From dcad3610d3f229114bb98f31162107dd4dfa98ac Mon Sep 17 00:00:00 2001
From 2b10a7ed9209ef9b542c014eba2688363e6c8483 Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Thu, 21 Jan 2021 09:52:19 -0500
Subject: [PATCH 09/21] subman: Don't treat failure to attach as fatal
@ -2864,7 +2864,7 @@ index 66cf5415..2152c521 100644
2.43.0
From 9b16a5e79fc39c86bc6387854597becac6fa0e91 Mon Sep 17 00:00:00 2001
From 087bfa30f5aae0233c181076d995bf06e4d10e3f Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Sun, 24 Jan 2021 11:24:36 -0500
Subject: [PATCH 10/21] subman: Add new no-installed-products state
@ -2963,7 +2963,7 @@ index 0838d490..46f8d35c 100644
2.43.0
From fe4b5fb8b7dcd0fdc5c876ebd65b88e11e283b5f Mon Sep 17 00:00:00 2001
From 704908573d589bd90b9d5c705c97dfff52db0a7f Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Sun, 24 Jan 2021 11:26:40 -0500
Subject: [PATCH 11/21] subman: Fix some build warnings
@ -3002,7 +3002,7 @@ index 46f8d35c..1f9ca447 100644
2.43.0
From 7bf651df57c2cc3517770de8349c8be5dc4c8814 Mon Sep 17 00:00:00 2001
From 4e08f49339698425f1c34bd82f484512cdc04f1e Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Sun, 24 Jan 2021 11:27:42 -0500
Subject: [PATCH 12/21] subman: Add DBus API to subscribe for updates on
@ -3100,7 +3100,7 @@ index 1f9ca447..705f8b11 100644
2.43.0
From 6bfebcb89dce99075546e79a82e6fd466ab358e7 Mon Sep 17 00:00:00 2001
From 7a98b24d40ba6a963043ed0d74f65e88937c6c55 Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Sun, 24 Jan 2021 11:34:03 -0500
Subject: [PATCH 13/21] subman: Improve subscription status handling
@ -3179,7 +3179,7 @@ index 705f8b11..6d80bfa9 100644
2.43.0
From 4af56f9d697ba97ce68858c769ae4b68a0fbe694 Mon Sep 17 00:00:00 2001
From e725a1d6a6f8b67cee1cbee6215ffb3ec956c6d5 Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Sun, 24 Jan 2021 11:55:19 -0500
Subject: [PATCH 14/21] subman: Drop "LAST" from status enum
@ -3205,7 +3205,7 @@ index f8a3d9f4..88226564 100644
2.43.0
From ab1cbd3e88e16f3ee286e4c297f22ac847d3bbf8 Mon Sep 17 00:00:00 2001
From 2da1ab550a752aa431195103411d6f0b7ad4788a Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Sun, 24 Jan 2021 12:41:20 -0500
Subject: [PATCH 15/21] subman: Clean up notification behavior
@ -3429,7 +3429,7 @@ index 6d80bfa9..aaccbbc6 100644
2.43.0
From 843701b34daf388f7911139ce335c297acd02b14 Mon Sep 17 00:00:00 2001
From 98e2e95f43603f056d020f40b2bf461dcafba3a1 Mon Sep 17 00:00:00 2001
From: Kalev Lember <klember@redhat.com>
Date: Fri, 12 Feb 2021 14:51:29 +0100
Subject: [PATCH 16/21] subman: Update POTFILES.in
@ -3455,7 +3455,7 @@ index e721f526..7d5b7e9d 100644
2.43.0
From d1e25296efa338c89de7dc69089d0bf58fe155d9 Mon Sep 17 00:00:00 2001
From 58e3919488aee5644516fe752b403630ebe03f80 Mon Sep 17 00:00:00 2001
From: Kalev Lember <klember@redhat.com>
Date: Mon, 6 Sep 2021 21:31:14 +0200
Subject: [PATCH 17/21] subman: Don't force X11 backend
@ -3481,7 +3481,7 @@ index 28ac995b..839c1b79 100644
2.43.0
From 166979772981799cbdd66f57dd514372df965e48 Mon Sep 17 00:00:00 2001
From 2cf1112676922085a4b791a0235efaa721e64c97 Mon Sep 17 00:00:00 2001
From: Kalev Lember <klember@redhat.com>
Date: Tue, 7 Sep 2021 13:08:12 +0200
Subject: [PATCH 18/21] subman: Fix desktop file hint for notifications
@ -3527,7 +3527,7 @@ index aaccbbc6..be978fc3 100644
2.43.0
From 66f209f97ebee6f88516e6377283e777d5f81aa7 Mon Sep 17 00:00:00 2001
From 7fd3fe588aac6e37364b7d93596c8ea21a8f4ab6 Mon Sep 17 00:00:00 2001
From: Kalev Lember <klember@redhat.com>
Date: Wed, 8 Sep 2021 13:25:07 +0200
Subject: [PATCH 19/21] subman: Use preferences-system icon for notifications
@ -3573,7 +3573,7 @@ index be978fc3..dbb81098 100644
2.43.0
From d9da95f5306c81b2c4a23bfbae9c9ce7e94399cf Mon Sep 17 00:00:00 2001
From 87b4ef3f411f4df4d59850681d80f0be0a43be1e Mon Sep 17 00:00:00 2001
From: Felipe Borges <felipeborges@gnome.org>
Date: Fri, 15 Jul 2022 15:25:14 +0200
Subject: [PATCH 20/21] subman: Set "enable_content" option only for Register
@ -3610,7 +3610,7 @@ index 2152c521..04b599a4 100644
2.43.0
From 1ec8110778163b0b67cb300cc116b0b862492f21 Mon Sep 17 00:00:00 2001
From af1b217869f02788b3231530bf8368449180a5a7 Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Thu, 4 Jan 2024 10:09:33 -0500
Subject: [PATCH 21/21] subman: Make subscription-manager a soft dependency
@ -3623,11 +3623,11 @@ normal operation.
This commit makes the subman plugin more forgiving of situations where
subscription-manager isn't installed.
---
plugins/subman/gsd-subscription-manager.c | 86 ++++++++++++++++++-----
1 file changed, 70 insertions(+), 16 deletions(-)
plugins/subman/gsd-subscription-manager.c | 118 ++++++++++++++++++----
1 file changed, 96 insertions(+), 22 deletions(-)
diff --git a/plugins/subman/gsd-subscription-manager.c b/plugins/subman/gsd-subscription-manager.c
index dbb81098..e61d6c85 100644
index dbb81098..09a96a3a 100644
--- a/plugins/subman/gsd-subscription-manager.c
+++ b/plugins/subman/gsd-subscription-manager.c
@@ -271,8 +271,9 @@ _client_subscription_status_update (GsdSubscriptionManager *manager, GError **er
@ -3642,7 +3642,7 @@ index dbb81098..e61d6c85 100644
if (priv->installed_products->len == 0) {
priv->subscription_status = GSD_SUBMAN_SUBSCRIPTION_STATUS_NO_INSTALLED_PRODUCTS;
@@ -939,10 +940,55 @@ _rhsm_interface_to_string (_RhsmInterface kind)
@@ -939,40 +940,109 @@ _rhsm_interface_to_string (_RhsmInterface kind)
return NULL;
}
@ -3695,20 +3695,52 @@ index dbb81098..e61d6c85 100644
+start_loading (GsdSubscriptionManager *manager, GError **error)
{
GsdSubscriptionManagerPrivate *priv = manager->priv;
+ g_autoptr(GDBusConnection) connection = NULL;
+ g_autofree char *name_owner = NULL;
priv->config = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free);
@@ -953,7 +999,7 @@ _client_load (GsdSubscriptionManager *manager, GError **error)
+ connection = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, error);
+
+ if (connection == NULL) {
+ return FALSE;
+ }
+
+ g_dbus_connection_call (connection,
+ "org.freedesktop.DBus",
+ "/org/freedesktop/DBus",
+ "org.freedesktop.DBus",
+ "StartServiceByName",
+ g_variant_new("(su)", "com.redhat.RHSM1", 0),
+ NULL,
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ NULL,
+ NULL,
+ NULL);
+
/* connect to all the interfaces on the *different* objects :| */
for (guint i = 0; i < _RHSM_INTERFACE_LAST; i++) {
const gchar *kind = _rhsm_interface_to_string (i);
g_autofree gchar *opath = g_strdup_printf ("/com/redhat/RHSM1/%s", kind);
g_autofree gchar *iface = g_strdup_printf ("com.redhat.RHSM1.%s", kind);
priv->proxies[i] =
g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
- g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
- G_DBUS_PROXY_FLAGS_NONE,
+ G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START_AT_CONSTRUCTION,
NULL,
"com.redhat.RHSM1",
opath, iface,
@@ -964,15 +1010,19 @@ _client_load (GsdSubscriptionManager *manager, GError **error)
- NULL,
- "com.redhat.RHSM1",
- opath, iface,
- NULL,
- error);
+ g_dbus_proxy_new_sync (connection,
+ G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START_AT_CONSTRUCTION,
+ NULL,
+ "com.redhat.RHSM1",
+ opath, iface,
+ NULL,
+ error);
if (priv->proxies[i] == NULL)
return FALSE;
/* we want to get notified if the status of the system changes */
g_signal_connect (priv->proxies[i], "g-signal",
G_CALLBACK (_subman_proxy_signal_cb), manager);
@ -3735,7 +3767,7 @@ index dbb81098..e61d6c85 100644
/* success */
return TRUE;
@@ -981,13 +1031,16 @@ _client_load (GsdSubscriptionManager *manager, GError **error)
@@ -981,13 +1051,16 @@ _client_load (GsdSubscriptionManager *manager, GError **error)
gboolean
gsd_subscription_manager_start (GsdSubscriptionManager *manager, GError **error)
{
@ -3756,7 +3788,7 @@ index dbb81098..e61d6c85 100644
}
void
@@ -1222,8 +1275,9 @@ handle_get_property (GDBusConnection *connection,
@@ -1222,8 +1295,9 @@ handle_get_property (GDBusConnection *connection,
return NULL;
}