Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package cinnamon-session for 
openSUSE:Factory checked in at 2026-03-26 21:08:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cinnamon-session (Old)
 and      /work/SRC/openSUSE:Factory/.cinnamon-session.new.8177 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "cinnamon-session"

Thu Mar 26 21:08:23 2026 rev:34 rq:1342645 version:6.6.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/cinnamon-session/cinnamon-session.changes        
2025-12-09 12:57:04.264895157 +0100
+++ 
/work/SRC/openSUSE:Factory/.cinnamon-session.new.8177/cinnamon-session.changes  
    2026-03-27 06:37:48.517049207 +0100
@@ -1,0 +2,21 @@
+Wed Mar 25 23:10:05 UTC 2026 - Dirk Müller <[email protected]>
+
+- update to 6.6.3:
+  * .github/workflows: Update build.yml with generate-test-
+    packages.
+  * csm-manager.c: Close the end-session dialog before trying to
+    lock (#199)
+  * csm-manager.c: Fix the suspend action enum when blocked by an
+    inhibitor.
+  * Set env for qt ibus (#191)
+  * csm-manager.c: Add functionality to restart the cinnamon-
+    launcher (#184)
+  * Fixes cinnamon-session-quit --logout --no-prompt --force not
+    working (#183)
+  * Remove old upower support to match c-s-d commits (#185)
+  * csm-manager.c: Don't consider suspend inhibitors when
+    gathering capabilities for the logout dialog.
+  * csm-manager.c: Clear system inhibitors before attempting to
+    restart or shutdown using systemd.
+
+-------------------------------------------------------------------

Old:
----
  cinnamon-session-6.4.1.tar.gz

New:
----
  cinnamon-session-6.6.3.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ cinnamon-session.spec ++++++
--- /var/tmp/diff_new_pack.9iM2lo/_old  2026-03-27 06:37:49.049071135 +0100
+++ /var/tmp/diff_new_pack.9iM2lo/_new  2026-03-27 06:37:49.053071299 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package cinnamon-session
 #
-# Copyright (c) 2025 SUSE LLC and contributors
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
 
 
 Name:           cinnamon-session
-Version:        6.4.1
+Version:        6.6.3
 Release:        0
 Summary:        The session manager for the Cinnamon Desktop
 License:        GPL-2.0-or-later AND LGPL-2.1-or-later

++++++ cinnamon-session-6.4.1.tar.gz -> cinnamon-session-6.6.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.4.1/.github/workflows/build.yml 
new/cinnamon-session-6.6.3/.github/workflows/build.yml
--- old/cinnamon-session-6.4.1/.github/workflows/build.yml      2025-09-05 
17:42:54.000000000 +0200
+++ new/cinnamon-session-6.6.3/.github/workflows/build.yml      2026-02-11 
17:26:13.000000000 +0100
@@ -14,12 +14,28 @@
         description: 'Start an SSH server on failure.'
         required: false
         default: false
+  issue_comment:
+    types: [created]
 
 jobs:
   build:
+    if: github.event_name != 'issue_comment'
     uses: linuxmint/github-actions/.github/workflows/do-builds.yml@master
     with:
       commit_id: master
       ############################## Comma separated list - like 
'linuxmint/xapp, linuxmint/cinnamon-desktop'
       dependencies: linuxmint/xapp, linuxmint/cinnamon-desktop
       ##############################
+
+  # Generate test packages when /generate-test-packages is commented on a PR
+  generate-test-packages:
+    if: github.event_name == 'issue_comment' && github.event.issue.pull_request
+    uses: 
linuxmint/github-actions/.github/workflows/generate-test-packages.yml@master
+    secrets: inherit
+    with:
+      comment_body: ${{ github.event.comment.body }}
+      comment_user: ${{ github.event.comment.user.login }}
+      comment_id: ${{ github.event.comment.id }}
+      issue_number: ${{ github.event.issue.number }}
+      ############################## Comma separated list - like 
'linuxmint/xapp, linuxmint/cinnamon-desktop'
+      dependencies: linuxmint/xapp, linuxmint/cinnamon-desktop
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.4.1/cinnamon-session/csm-app.c 
new/cinnamon-session-6.6.3/cinnamon-session/csm-app.c
--- old/cinnamon-session-6.4.1/cinnamon-session/csm-app.c       2025-09-05 
17:42:54.000000000 +0200
+++ new/cinnamon-session-6.6.3/cinnamon-session/csm-app.c       2026-02-11 
17:26:13.000000000 +0100
@@ -510,18 +510,23 @@
         GTimeVal current_time;
         g_debug ("Re-starting app: %s", app->priv->id);
 
-        g_get_current_time (&current_time);
-        if (app->priv->last_restart_time.tv_sec > 0
-            && (current_time.tv_sec - app->priv->last_restart_time.tv_sec) < 
_CSM_APP_RESPAWN_RATELIMIT_SECONDS) {
-                g_warning ("App '%s' respawning too quickly", 
csm_app_peek_app_id (app));
-                g_set_error (error,
-                             CSM_APP_ERROR,
-                             CSM_APP_ERROR_RESTART_LIMIT,
-                             "Component '%s' crashing too quickly",
-                             csm_app_peek_app_id (app));
-                return FALSE;
+        // Cinnamon is *not* autorestart, we will only force it to via dbus 
RestartCinnamonLauncher
+        // and don't want that to be skipped for some reason if it happens 
multiple times within a minute.
+        // (This shouldn't ever happen anyhow).
+        if (g_strcmp0 (app->priv->app_id, "cinnamon.desktop") != 0) {
+                g_get_current_time (&current_time);
+                if (app->priv->last_restart_time.tv_sec > 0
+                    && (current_time.tv_sec - 
app->priv->last_restart_time.tv_sec) < _CSM_APP_RESPAWN_RATELIMIT_SECONDS) {
+                        g_warning ("App '%s' respawning too quickly", 
csm_app_peek_app_id (app));
+                        g_set_error (error,
+                                     CSM_APP_ERROR,
+                                     CSM_APP_ERROR_RESTART_LIMIT,
+                                     "Component '%s' crashing too quickly",
+                                     csm_app_peek_app_id (app));
+                        return FALSE;
+                }
+                app->priv->last_restart_time = current_time;
         }
-        app->priv->last_restart_time = current_time;
 
         return CSM_APP_GET_CLASS (app)->impl_restart (app, error);
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-session-6.4.1/cinnamon-session/csm-consolekit.c 
new/cinnamon-session-6.6.3/cinnamon-session/csm-consolekit.c
--- old/cinnamon-session-6.4.1/cinnamon-session/csm-consolekit.c        
2025-09-05 17:42:54.000000000 +0200
+++ new/cinnamon-session-6.6.3/cinnamon-session/csm-consolekit.c        
2026-02-11 17:26:13.000000000 +0100
@@ -31,10 +31,6 @@
 #include <gio/gio.h>
 #include <gio/gunixfdlist.h>
 
-#ifdef HAVE_OLD_UPOWER
-#define UPOWER_ENABLE_DEPRECATED 1
-#include <upower.h>
-#endif
 
 #include "csm-system.h"
 #include "csm-consolekit.h"
@@ -51,9 +47,6 @@
 {
         GDBusProxy      *ck_proxy;
         GDBusProxy      *ck_session_proxy;
-#ifdef HAVE_OLD_UPOWER
-        UpClient        *up_client;
-#endif
         char            *session_id;
         gchar           *session_path;
 
@@ -113,9 +106,6 @@
         drop_system_inhibitor (consolekit);
         drop_delay_inhibitor (consolekit);
 
-#ifdef HAVE_OLD_UPOWER
-        g_clear_object (&manager->priv->up_client);
-#endif
 
         G_OBJECT_CLASS (csm_consolekit_parent_class)->finalize (object);
 }
@@ -280,10 +270,6 @@
         g_signal_connect (manager->priv->ck_session_proxy, "g-signal",
                           G_CALLBACK (ck_session_proxy_signal_cb), manager);
 
-#ifdef HAVE_OLD_UPOWER
-        g_clear_object (&manager->priv->up_client);
-        manager->priv->up_client = up_client_new ();
-#endif
 
         g_object_unref (bus);
 }
@@ -603,10 +589,6 @@
 static gboolean
 csm_consolekit_can_suspend (CsmSystem *system)
 {
-#ifdef HAVE_OLD_UPOWER
-        CsmConsolekit *consolekit = CSM_CONSOLEKIT (system);
-        return up_client_get_can_suspend (consolekit->priv->up_client);
-#else
         CsmConsolekit *manager = CSM_CONSOLEKIT (system);
         gchar *rv;
         GVariant *res;
@@ -634,16 +616,11 @@
         g_free (rv);
 
         return can_suspend;
-#endif
 }
 
 static gboolean
 csm_consolekit_can_hibernate (CsmSystem *system)
 {
-#ifdef HAVE_OLD_UPOWER
-        CsmConsolekit *consolekit = CSM_CONSOLEKIT (system);
-        return up_client_get_can_hibernate (consolekit->priv->up_client);
-#else
         CsmConsolekit *manager = CSM_CONSOLEKIT (system);
         gchar *rv;
         GVariant *res;
@@ -671,7 +648,6 @@
         g_free (rv);
 
         return can_hibernate;
-#endif
 }
 
 static void
@@ -715,17 +691,6 @@
 static void
 csm_consolekit_suspend (CsmSystem *system, gboolean suspend_then_hibernate)
 {
-#ifdef HAVE_OLD_UPOWER
-        CsmConsolekit *consolekit = CSM_CONSOLEKIT (system);
-        GError *error = NULL;
-        gboolean ret;
-
-        ret = up_client_suspend_sync (consolekit->priv->up_client, NULL, 
&error);
-        if (!ret) {
-                g_warning ("Unexpected suspend failure: %s", error->message);
-                g_error_free (error);
-        }
-#else
         CsmConsolekit *manager = CSM_CONSOLEKIT (system);
 
        gchar *method = "Suspend";
@@ -742,23 +707,11 @@
                            NULL,
                            suspend_done,
                            manager);
-#endif
 }
 
 static void
 csm_consolekit_hibernate (CsmSystem *system)
 {
-#ifdef HAVE_OLD_UPOWER
-        CsmConsolekit *consolekit = CSM_CONSOLEKIT (system);
-        GError *error = NULL;
-        gboolean ret;
-
-        ret = up_client_hibernate_sync (consolekit->priv->up_client, NULL, 
&error);
-        if (!ret) {
-                g_warning ("Unexpected hibernate failure: %s", error->message);
-                g_error_free (error);
-        }
-#else
         CsmConsolekit *manager = CSM_CONSOLEKIT (system);
 
         g_dbus_proxy_call (manager->priv->ck_proxy,
@@ -769,7 +722,6 @@
                            NULL,
                            hibernate_done,
                            manager);
-#endif
 }
 
 static void
@@ -859,6 +811,12 @@
         return FALSE;
 }
 
+static gchar *
+csm_consolekit_get_login_session_id (CsmSystem *system)
+{
+        return NULL;
+}
+
 static void
 csm_consolekit_system_init (CsmSystemInterface *iface)
 {
@@ -876,6 +834,7 @@
         iface->add_inhibitor = csm_consolekit_add_inhibitor;
         iface->remove_inhibitor = csm_consolekit_remove_inhibitor;
         iface->is_last_session_for_user = 
csm_consolekit_is_last_session_for_user;
+        iface->get_login_session_id = csm_consolekit_get_login_session_id;
 }
 
 CsmConsolekit *
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-session-6.4.1/cinnamon-session/csm-manager.c 
new/cinnamon-session-6.6.3/cinnamon-session/csm-manager.c
--- old/cinnamon-session-6.4.1/cinnamon-session/csm-manager.c   2025-09-05 
17:42:54.000000000 +0200
+++ new/cinnamon-session-6.6.3/cinnamon-session/csm-manager.c   2026-02-11 
17:26:13.000000000 +0100
@@ -1232,12 +1232,12 @@
 static void
 manager_attempt_hibernate (CsmManager *manager)
 {
+        close_end_session_dialog (manager);
+
         /* lock the screen before we try anything.  If it all fails, at least 
the screen is locked
          * (if preferences dictate it) */
         manager_perhaps_lock (manager);
 
-        close_end_session_dialog (manager);
-
         if (csm_system_can_hibernate (manager->priv->system)) {
                 csm_system_hibernate (manager->priv->system);
         }
@@ -1246,12 +1246,12 @@
 static void
 manager_attempt_suspend (CsmManager *manager)
 {
+        close_end_session_dialog (manager);
+
         /* lock the screen before we try anything.  If it all fails, at least 
the screen is locked
          * (if preferences dictate it) */
         manager_perhaps_lock (manager);
 
-        close_end_session_dialog (manager);
-
         if (g_settings_get_boolean (manager->priv->settings, 
KEY_PREFER_HYBRID_SLEEP) &&
             csm_system_can_hybrid_sleep (manager->priv->system)) {
                 csm_system_hybrid_sleep (manager->priv->system);
@@ -1600,6 +1600,17 @@
                                                session_name);
 }
 
+void
+_csm_manager_export_login_session_id (CsmManager *manager)
+{
+        g_autofree gchar *session_id = NULL;
+
+        session_id = csm_system_get_login_session_id (manager->priv->system);
+
+        csm_exported_manager_set_session_id (manager->priv->skeleton,
+                                             session_id);
+}
+
 static gboolean
 _app_has_app_id (const char   *id,
                  CsmApp       *app,
@@ -1698,6 +1709,29 @@
 }
 
 static gboolean
+restart_cinnamon_launcher (CsmManager *manager)
+{
+    CsmApp *app;
+
+    app = find_app_for_app_id (manager, "cinnamon.desktop");
+
+    if (app) {
+        GError *error = NULL;
+
+        g_debug ("CsmManager: Restarting cinnamon-launcher");
+
+        if (!csm_app_restart (app, &error)) {
+            g_warning ("CsmManager: Unable to restart cinnamon-launcher: %s", 
error->message);
+            g_error_free (error);
+        }
+    } else {
+        g_warning ("CsmManager: Unable to find the cinnamon-launcher");
+    }
+
+    return G_SOURCE_REMOVE;
+}
+
+static gboolean
 csm_manager_setenv (CsmExportedManager    *skeleton,
                     GDBusMethodInvocation *invocation,
                     const gchar           *variable,
@@ -2350,6 +2384,30 @@
         return TRUE;
 }
 
+static gboolean
+csm_manager_restart_cinnamon_launcher (CsmExportedManager     *skeleton,
+                                       GDBusMethodInvocation  *invocation,
+                                       CsmManager             *manager)
+{
+        g_debug ("CsmManager: RestartCinnamonLauncher called");
+
+        if (manager->priv->phase != CSM_MANAGER_PHASE_RUNNING) {
+                g_dbus_method_invocation_return_error (invocation,
+                                                       CSM_MANAGER_ERROR,
+                                                       
CSM_MANAGER_ERROR_NOT_IN_RUNNING,
+                                                       
"RestartCinnamonLauncher interface is only available during the Running phase");
+
+                return TRUE;
+        }
+
+        g_idle_add ((GSourceFunc)restart_cinnamon_launcher, manager);
+
+        csm_exported_manager_complete_restart_cinnamon_launcher (skeleton,
+                                                                 invocation);
+
+        return TRUE;
+}
+
 static void
 _disconnect_client (CsmManager *manager,
                     CsmClient  *client)
@@ -2719,8 +2777,8 @@
                              (!_log_out_is_locked_down (manager)) && 
csm_system_can_stop (manager->priv->system),
                              (!_log_out_is_locked_down (manager)) && 
csm_system_can_restart (manager->priv->system),
                              can_hybrid_sleep,
-                             (!csm_manager_is_suspend_inhibited (manager)) && 
csm_system_can_suspend (manager->priv->system),
-                             (!csm_manager_is_suspend_inhibited (manager)) && 
csm_system_can_hibernate (manager->priv->system),
+                             csm_system_can_suspend (manager->priv->system),
+                             csm_system_can_hibernate (manager->priv->system),
                              (!csm_manager_is_logout_inhibited (manager)));
 
         csm_exported_dialog_complete_get_capabilities (dialog_skeleton, 
invocation, ret);
@@ -2761,7 +2819,8 @@
     { "handle-logout",                          csm_manager_logout_dbus },
     { "handle-is-session-running",              csm_manager_is_session_running 
},
     { "handle-request-shutdown",                csm_manager_request_shutdown },
-    { "handle-request-reboot",                  csm_manager_request_reboot }
+    { "handle-request-reboot",                  csm_manager_request_reboot },
+    { "handle-restart-cinnamon-launcher",       
csm_manager_restart_cinnamon_launcher }
 };
 
 static SkeletonSignal dialog_skeleton_signals[] = {
@@ -3776,7 +3835,7 @@
                 return;
         }
 
-        emit_inhibitor_info_to_dialog (manager, CSM_LOGOUT_ACTION_HIBERNATE);
+        emit_inhibitor_info_to_dialog (manager, CSM_LOGOUT_ACTION_SLEEP);
 }
 
 static void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-session-6.4.1/cinnamon-session/csm-manager.h 
new/cinnamon-session-6.6.3/cinnamon-session/csm-manager.h
--- old/cinnamon-session-6.4.1/cinnamon-session/csm-manager.h   2025-09-05 
17:42:54.000000000 +0200
+++ new/cinnamon-session-6.6.3/cinnamon-session/csm-manager.h   2026-02-11 
17:26:13.000000000 +0100
@@ -143,6 +143,8 @@
                                                                 const char     
*session_name,
                                                                 gboolean       
 is_fallback);
 
+void                _csm_manager_export_login_session_id       (CsmManager     
*manager);
+
 gboolean            csm_manager_set_phase                      (CsmManager     
*manager,
                                                                 
CsmManagerPhase phase);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-session-6.4.1/cinnamon-session/csm-session-fill.c 
new/cinnamon-session-6.6.3/cinnamon-session/csm-session-fill.c
--- old/cinnamon-session-6.4.1/cinnamon-session/csm-session-fill.c      
2025-09-05 17:42:54.000000000 +0200
+++ new/cinnamon-session-6.6.3/cinnamon-session/csm-session-fill.c      
2026-02-11 17:26:13.000000000 +0100
@@ -496,6 +496,7 @@
         }
 
         _csm_manager_set_active_session (manager, actual_session, is_fallback);
+        _csm_manager_export_login_session_id (manager);
 
         g_free (actual_session);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.4.1/cinnamon-session/csm-system.c 
new/cinnamon-session-6.6.3/cinnamon-session/csm-system.c
--- old/cinnamon-session-6.4.1/cinnamon-session/csm-system.c    2025-09-05 
17:42:54.000000000 +0200
+++ new/cinnamon-session-6.6.3/cinnamon-session/csm-system.c    2026-02-11 
17:26:13.000000000 +0100
@@ -164,6 +164,12 @@
         return CSM_SYSTEM_GET_IFACE (system)->is_last_session_for_user 
(system);
 }
 
+gchar *
+csm_system_get_login_session_id (CsmSystem    *system)
+{
+        return CSM_SYSTEM_GET_IFACE (system)->get_login_session_id (system);
+}
+
 CsmSystem *
 csm_get_system (void)
 {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.4.1/cinnamon-session/csm-system.h 
new/cinnamon-session-6.6.3/cinnamon-session/csm-system.h
--- old/cinnamon-session-6.4.1/cinnamon-session/csm-system.h    2025-09-05 
17:42:54.000000000 +0200
+++ new/cinnamon-session-6.6.3/cinnamon-session/csm-system.h    2026-02-11 
17:26:13.000000000 +0100
@@ -70,6 +70,7 @@
         void     (* remove_inhibitor) (CsmSystem        *system,
                                        const gchar      *id);
         gboolean (* is_last_session_for_user) (CsmSystem *system);
+        gchar *  (* get_login_session_id) (CsmSystem *system);
 };
 
 enum _CsmSystemError {
@@ -119,7 +120,7 @@
 
 void       csm_system_remove_inhibitor (CsmSystem        *system,
                                         const gchar      *id);
-
+gchar     *csm_system_get_login_session_id (CsmSystem    *system);
 G_END_DECLS
 
 #endif /* __CSM_SYSTEM_H__ */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-session-6.4.1/cinnamon-session/csm-systemd.c 
new/cinnamon-session-6.6.3/cinnamon-session/csm-systemd.c
--- old/cinnamon-session-6.4.1/cinnamon-session/csm-systemd.c   2025-09-05 
17:42:54.000000000 +0200
+++ new/cinnamon-session-6.6.3/cinnamon-session/csm-systemd.c   2026-02-11 
17:26:13.000000000 +0100
@@ -718,6 +718,26 @@
         return is_last_session;
 }
 
+static gchar *
+csm_systemd_get_login_session_id (CsmSystem *system)
+{
+        CsmSystemd *manager = CSM_SYSTEMD (system);
+
+        gchar *pid_session;
+        gint ret;
+
+        ret = sd_pid_get_session (getpid (), &pid_session);
+
+        if (ret < 0) {
+            g_printerr ("can't get login session id for cinnamon-session. 
errno: %d\n", -ret);
+            return NULL;
+        }
+
+        g_debug ("Login session ID is: %s\n", pid_session);
+
+        return pid_session;
+}
+
 static void
 csm_systemd_system_init (CsmSystemInterface *iface)
 {
@@ -737,6 +757,7 @@
         iface->add_inhibitor = csm_systemd_add_inhibitor;
         iface->remove_inhibitor = csm_systemd_remove_inhibitor;
         iface->is_last_session_for_user = csm_systemd_is_last_session_for_user;
+        iface->get_login_session_id = csm_systemd_get_login_session_id;
 }
 
 CsmSystemd *
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.4.1/cinnamon-session/main.c 
new/cinnamon-session-6.6.3/cinnamon-session/main.c
--- old/cinnamon-session-6.4.1/cinnamon-session/main.c  2025-09-05 
17:42:54.000000000 +0200
+++ new/cinnamon-session-6.6.3/cinnamon-session/main.c  2026-02-11 
17:26:13.000000000 +0100
@@ -265,6 +265,30 @@
         csm_util_export_activation_environment (NULL);
         csm_util_export_user_environment (NULL);
 
+        {
+                gchar *ibus_path;
+
+                ibus_path = g_find_program_in_path("ibus-daemon");
+
+                if (ibus_path) {
+                        const gchar *p;
+                        p = g_getenv ("QT_IM_MODULES");
+                        if (!p || !*p)
+                                p = "wayland;ibus";
+                        csm_util_setenv ("QT_IM_MODULES", p);
+                        p = g_getenv ("QT_IM_MODULE");
+                        if (!p || !*p)
+                                p = "ibus";
+                        csm_util_setenv ("QT_IM_MODULE", p);
+                        p = g_getenv ("XMODIFIERS");
+                        if (!p || !*p)
+                                p = "@im=ibus";
+                        csm_util_setenv ("XMODIFIERS", p);
+                }
+
+                g_free (ibus_path);
+        }
+
         mdm_log_init ();
         mdm_log_set_debug (debug);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-session-6.4.1/cinnamon-session/org.gnome.SessionManager.xml 
new/cinnamon-session-6.6.3/cinnamon-session/org.gnome.SessionManager.xml
--- old/cinnamon-session-6.4.1/cinnamon-session/org.gnome.SessionManager.xml    
2025-09-05 17:42:54.000000000 +0200
+++ new/cinnamon-session-6.6.3/cinnamon-session/org.gnome.SessionManager.xml    
2026-02-11 17:26:13.000000000 +0100
@@ -431,5 +431,20 @@
       </doc:doc>
     </property>
 
+    <property name="SessionId" type="s" access="read">
+      <doc:doc>
+        <doc:description>
+          <doc:para>The login session ID of cinnamon-session.</doc:para>
+        </doc:description>
+      </doc:doc>
+    </property>
+
+    <method name="RestartCinnamonLauncher">
+      <doc:doc>
+        <doc:description>
+          <doc:para>Launches cinnamon-launcher for current session.</doc:para>
+        </doc:description>
+      </doc:doc>
+    </method>
   </interface>
 </node>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-session-6.4.1/cinnamon-session-quit/cinnamon-session-quit.glade 
new/cinnamon-session-6.6.3/cinnamon-session-quit/cinnamon-session-quit.glade
--- 
old/cinnamon-session-6.4.1/cinnamon-session-quit/cinnamon-session-quit.glade    
    2025-09-05 17:42:54.000000000 +0200
+++ 
new/cinnamon-session-6.6.3/cinnamon-session-quit/cinnamon-session-quit.glade    
    2026-02-11 17:26:13.000000000 +0100
@@ -193,7 +193,7 @@
                             <property name="can-focus">False</property>
                             <property name="halign">end</property>
                             <property name="margin-start">20</property>
-                            <property 
name="icon-name">system-shutdown-symbolic</property>
+                            <property 
name="icon-name">xsi-shutdown-symbolic</property>
                             <property name="icon_size">6</property>
                           </object>
                           <packing>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-session-6.4.1/cinnamon-session-quit/cinnamon-session-quit.py 
new/cinnamon-session-6.6.3/cinnamon-session-quit/cinnamon-session-quit.py
--- old/cinnamon-session-6.4.1/cinnamon-session-quit/cinnamon-session-quit.py   
2025-09-05 17:42:54.000000000 +0200
+++ new/cinnamon-session-6.6.3/cinnamon-session-quit/cinnamon-session-quit.py   
2026-02-11 17:26:13.000000000 +0100
@@ -60,7 +60,7 @@
         group.add_argument("--reboot", dest="mode", action='store_const', 
const=Action.RESTART,
                             help="Log out")
         parser.add_argument("--force", dest="force", action="store_true",
-                            help=_("Ignoring any existing inhibitors"))
+                            help=_("Ignoring any existing inhibitors. Implies 
--no-prompt"))
         parser.add_argument("--no-prompt", dest="no_prompt", 
action='store_true',
                             help=_("Don't prompt for user confirmation"))
         parser.add_argument("--sm-owned", action="store_true", 
help=argparse.SUPPRESS)
@@ -76,8 +76,13 @@
         self.mode = args.mode
         self.default_response = ResponseCode(int(self.mode))
 
-        self.force = args.force
-        self.no_prompt = args.no_prompt
+        if args.force:
+            self.LogoutMode = LogoutParams.FORCE
+        elif args.no_prompt:
+            self.LogoutMode = LogoutParams.NO_PROMPT
+        else:
+            self.LogoutMode = LogoutParams.NORMAL
+
         self.sm_owned = args.sm_owned
         self.bus_id = args.bus_id
 
@@ -120,16 +125,10 @@
                     print("An error occurred forwarding to the session 
manager: %s" % e.message, file=sys.stderr, end=None)
 
             if self.mode == Action.LOGOUT:
-                arg = LogoutParams.NORMAL
-
-                if self.no_prompt:
-                    arg |= LogoutParams.NO_PROMPT
-                if self.force:
-                    arg |= LogoutParams.FORCE
 
                 sm_proxy.call(
                     "Logout",
-                    GLib.Variant("(u)", [arg]),
+                    GLib.Variant("(u)", [self.LogoutMode]),
                     Gio.DBusCallFlags.NO_AUTO_START,
                     -1,
                     None,
@@ -265,7 +264,7 @@
             self.button_switchuser.set_visible(can_switch_user)
             self.button_logout.set_visible(True)
             default_button = self.button_logout
-            self.action_icon.set_from_icon_name("system-log-out-symbolic", 
Gtk.IconSize.DIALOG)
+            self.action_icon.set_from_icon_name("xsi-log-out-symbolic", 
Gtk.IconSize.DIALOG)
             self.window.set_icon_name("system-log-out")
         elif self.mode == Action.SHUTDOWN:
             self.dialog_label.set_text(_("Shut down this system now?"))
@@ -274,7 +273,7 @@
             self.button_restart.set_visible(can_restart)
             self.button_shutdown.set_visible(can_stop)
             default_button = self.button_shutdown
-            self.action_icon.set_from_icon_name("system-shutdown-symbolic", 
Gtk.IconSize.DIALOG)
+            self.action_icon.set_from_icon_name("xsi-shutdown-symbolic", 
Gtk.IconSize.DIALOG)
             self.window.set_icon_name("system-shutdown")
         elif self.mode == Action.RESTART:
             if not can_restart:
@@ -284,7 +283,7 @@
             self.dialog_label.set_text(_("Restart this system now?"))
             self.button_restart.set_visible(True)
             default_button = self.button_restart
-            self.action_icon.set_from_icon_name("system-reboot-symbolic", 
Gtk.IconSize.DIALOG)
+            self.action_icon.set_from_icon_name("xsi-reboot-symbolic", 
Gtk.IconSize.DIALOG)
             self.window.set_icon_name("system-reboot")
 
         default_button.get_style_context().add_class("destructive-action")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.4.1/cinnamon-session.pot 
new/cinnamon-session-6.6.3/cinnamon-session.pot
--- old/cinnamon-session-6.4.1/cinnamon-session.pot     2025-09-05 
17:42:54.000000000 +0200
+++ new/cinnamon-session-6.6.3/cinnamon-session.pot     2026-02-11 
17:26:13.000000000 +0100
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-11-19 14:25+0000\n"
+"POT-Creation-Date: 2025-11-25 14:18+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <[email protected]>\n"
@@ -27,48 +27,48 @@
 msgstr ""
 
 #: cinnamon-session-quit/cinnamon-session-quit.py:63
-msgid "Ignoring any existing inhibitors"
+msgid "Ignoring any existing inhibitors. Implies --no-prompt"
 msgstr ""
 
 #: cinnamon-session-quit/cinnamon-session-quit.py:65
 msgid "Don't prompt for user confirmation"
 msgstr ""
 
-#: cinnamon-session-quit/cinnamon-session-quit.py:245
+#: cinnamon-session-quit/cinnamon-session-quit.py:263
 msgid "Log out of this system now?"
 msgstr ""
 
-#: cinnamon-session-quit/cinnamon-session-quit.py:251
+#: cinnamon-session-quit/cinnamon-session-quit.py:270
 msgid "Shut down this system now?"
 msgstr ""
 
-#: cinnamon-session-quit/cinnamon-session-quit.py:263
+#: cinnamon-session-quit/cinnamon-session-quit.py:283
 #: cinnamon-session-quit/cinnamon-session-quit.glade.h:10
 msgid "Restart this system now?"
 msgstr ""
 
-#: cinnamon-session-quit/cinnamon-session-quit.py:312
+#: cinnamon-session-quit/cinnamon-session-quit.py:341
 #, c-format
 msgid "You will be automatically logged out in %d second."
 msgid_plural "You will be logged out in %d seconds."
 msgstr[0] ""
 msgstr[1] ""
 
-#: cinnamon-session-quit/cinnamon-session-quit.py:318
+#: cinnamon-session-quit/cinnamon-session-quit.py:347
 #, c-format
 msgid "This system will be automatically shut down in %d second."
 msgid_plural "This system will be shut down in %d seconds."
 msgstr[0] ""
 msgstr[1] ""
 
-#: cinnamon-session-quit/cinnamon-session-quit.py:324
+#: cinnamon-session-quit/cinnamon-session-quit.py:353
 #, c-format
 msgid "This system will be automatically restarted in %d second."
 msgid_plural "This system will be restarted in %d seconds."
 msgstr[0] ""
 msgstr[1] ""
 
-#: cinnamon-session/csm-manager.c:1436 cinnamon-session/csm-manager.c:3146
+#: cinnamon-session/csm-manager.c:1421 cinnamon-session/csm-manager.c:3143
 msgid "Not responding"
 msgstr ""
 
@@ -110,39 +110,39 @@
 msgid "Unknown"
 msgstr ""
 
-#: cinnamon-session/main.c:209
+#: cinnamon-session/main.c:208
 msgid "Override standard autostart directories"
 msgstr ""
 
-#: cinnamon-session/main.c:209
+#: cinnamon-session/main.c:208
 msgid "AUTOSTART_DIR"
 msgstr ""
 
-#: cinnamon-session/main.c:210
+#: cinnamon-session/main.c:209
 msgid "Session to use"
 msgstr ""
 
-#: cinnamon-session/main.c:210
+#: cinnamon-session/main.c:209
 msgid "SESSION_NAME"
 msgstr ""
 
-#: cinnamon-session/main.c:211
+#: cinnamon-session/main.c:210
 msgid "Enable debugging code"
 msgstr ""
 
-#: cinnamon-session/main.c:212
+#: cinnamon-session/main.c:211
 msgid "Do not load user-specified applications"
 msgstr ""
 
-#: cinnamon-session/main.c:213
+#: cinnamon-session/main.c:212
 msgid "Version of this application"
 msgstr ""
 
-#: cinnamon-session/main.c:215
+#: cinnamon-session/main.c:214
 msgid "Show the fail whale dialog for testing"
 msgstr ""
 
-#: cinnamon-session/main.c:246
+#: cinnamon-session/main.c:245
 msgid " - the Cinnamon session manager"
 msgstr ""
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-session-6.4.1/debian/55cinnamon-session_gnomerc 
new/cinnamon-session-6.6.3/debian/55cinnamon-session_gnomerc
--- old/cinnamon-session-6.4.1/debian/55cinnamon-session_gnomerc        
2025-09-05 17:42:54.000000000 +0200
+++ new/cinnamon-session-6.6.3/debian/55cinnamon-session_gnomerc        
2026-02-11 17:26:13.000000000 +0100
@@ -11,12 +11,8 @@
     if [ -r "$GNOMERC" ]; then
       . "$GNOMERC"
     fi
-    # We prepend /usr/share/gnome since its defaults.list actually points
-    # to /etc so it is configurable.
     if [ -z "$XDG_DATA_DIRS" ]; then
-      XDG_DATA_DIRS=/usr/share/gnome:/usr/local/share/:/usr/share/
-    else
-      XDG_DATA_DIRS=/usr/share/gnome:"$XDG_DATA_DIRS"
+      XDG_DATA_DIRS=/usr/local/share/:/usr/share/
     fi
     export XDG_DATA_DIRS
     ;;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.4.1/debian/changelog 
new/cinnamon-session-6.6.3/debian/changelog
--- old/cinnamon-session-6.4.1/debian/changelog 2025-09-05 17:42:54.000000000 
+0200
+++ new/cinnamon-session-6.6.3/debian/changelog 2026-02-11 17:26:13.000000000 
+0100
@@ -1,9 +1,47 @@
-cinnamon-session (6.4.1) gigi; urgency=medium
+cinnamon-session (6.6.3) zena; urgency=medium
 
   [ Michael Webster ]
+  * .github/workflows: Update build.yml with generate-test-packages.
+  * csm-manager.c: Close the end-session dialog before trying to lock (#199)
+
+ -- Clement Lefebvre <[email protected]>  Wed, 11 Feb 2026 16:26:06 +0000
+
+cinnamon-session (6.6.2) zena; urgency=medium
+
+  [ Michael Webster ]
+  * csm-manager.c: Fix the suspend action enum when blocked by an inhibitor.
+
+ -- Clement Lefebvre <[email protected]>  Mon, 09 Feb 2026 16:24:32 +0000
+
+cinnamon-session (6.6.1) zena; urgency=medium
+
+  [ Leigh Scott ]
+  * Set env for qt ibus (#191)
+
+ -- Clement Lefebvre <[email protected]>  Wed, 10 Dec 2025 14:28:33 +0000
+
+cinnamon-session (6.6.0) zena; urgency=medium
+
+  [ Michael Webster ]
+  * csm-manager.c: Add functionality to restart the cinnamon-launcher (#184)
+
+  [ SimonBenito ]
+  * Fixes cinnamon-session-quit --logout --no-prompt --force not working (#183)
+
+  [ Leigh Scott ]
+  * Remove old upower support to match c-s-d commits (#185)
+
+  [ Michael Webster ]
+  * csm-manager.c: Don't consider suspend inhibitors when gathering 
capabilities for the logout dialog.
   * csm-manager.c: Clear system inhibitors before attempting to restart or 
shutdown using systemd.
 
- -- Clement Lefebvre <[email protected]>  Fri, 05 Sep 2025 16:42:40 +0100
+  [ Clement Lefebvre ]
+  * XDG_DATA_DIRS: Do not include /usr/share/gnome
+  * Switch to XApp symbolic icons
+  * Switch to xapp-symbolic-icons (XSI)
+  * l10n: Update POT
+
+ -- Clement Lefebvre <[email protected]>  Tue, 25 Nov 2025 14:20:08 +0000
 
 cinnamon-session (6.4.0) xia; urgency=medium
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.4.1/debian/control 
new/cinnamon-session-6.6.3/debian/control
--- old/cinnamon-session-6.4.1/debian/control   2025-09-05 17:42:54.000000000 
+0200
+++ new/cinnamon-session-6.6.3/debian/control   2026-02-11 17:26:13.000000000 
+0100
@@ -16,7 +16,7 @@
  libjson-glib-dev (>= 0.10),
  libsm-dev,
  libsystemd-dev [linux-any],
- libupower-glib-dev (>= 0.9.0),
+ libupower-glib-dev (>= 0.99.11),
  libx11-dev,
  libxapp-dev (>= 1.0.4),
  libxau-dev,
@@ -40,7 +40,7 @@
  gir1.2-xapp-1.0,
  python3-gi,
  python3-setproctitle,
- upower (>= 0.9.0),
+ upower (>= 0.99.11),
  ${gir:Depends},
  ${misc:Depends},
  ${python3:Depends},
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.4.1/meson.build 
new/cinnamon-session-6.6.3/meson.build
--- old/cinnamon-session-6.4.1/meson.build      2025-09-05 17:42:54.000000000 
+0200
+++ new/cinnamon-session-6.6.3/meson.build      2026-02-11 17:26:13.000000000 
+0100
@@ -2,7 +2,7 @@
 project(
   'cinnamon-session',
   ['c'],
-  version : '6.4.1',
+  version : '6.6.3',
   meson_version : '>=0.56.0'
 )
 

Reply via email to