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 2024-08-21 23:25:00
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cinnamon-session (Old)
 and      /work/SRC/openSUSE:Factory/.cinnamon-session.new.2698 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "cinnamon-session"

Wed Aug 21 23:25:00 2024 rev:29 rq:1193964 version:6.2.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/cinnamon-session/cinnamon-session.changes        
2024-03-25 21:17:16.469412710 +0100
+++ 
/work/SRC/openSUSE:Factory/.cinnamon-session.new.2698/cinnamon-session.changes  
    2024-08-21 23:25:24.076046763 +0200
@@ -1,0 +2,15 @@
+Tue Aug 13 05:01:36 UTC 2024 - Richard Rahl <[email protected]>
+
+- update to 6.2.1:
+  * Fix restart and shutdown
+- update to 6.2.0:
+  * cinnamon-session-quit.py: add missing window icon
+  * csm-manager.c: Unset WAYLAND_DISPLAY during shutdown in a wayland
+  * main.c: Reset the activation environment at the end of the
+  * csm-manager.c: Stop the user dbus-daemon at the end of the session
+  * cs-presence.c: Fix CsmPresence idle handling
+  * cinnamon-session-quit.py: Set logout window to keep-above and all
+  * Remove orphaned include
+  * cinnamon-session: make sure wayland sessions get a login shell
+
+-------------------------------------------------------------------

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

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

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

Other differences:
------------------
++++++ cinnamon-session.spec ++++++
--- /var/tmp/diff_new_pack.QYhy94/_old  2024-08-21 23:25:24.756075153 +0200
+++ /var/tmp/diff_new_pack.QYhy94/_new  2024-08-21 23:25:24.756075153 +0200
@@ -17,13 +17,12 @@
 
 
 Name:           cinnamon-session
-Version:        6.0.4
+Version:        6.2.1
 Release:        0
 Summary:        The session manager for the Cinnamon Desktop
 License:        GPL-2.0-or-later AND LGPL-2.1-or-later
-Group:          System/GUI/Other
 URL:            https://github.com/linuxmint/cinnamon-session
-Source:         
https://github.com/linuxmint/%{name}/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz
+Source:         %{url}/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz
 Source1:        %{name}-logind.gschema.override
 BuildRequires:  docbook
 BuildRequires:  hicolor-icon-theme
@@ -51,17 +50,16 @@
 Requires:       cinnamon-settings-daemon
 Requires:       dbus-1-x11
 Requires:       upower >= 0.9.0
-Recommends:     %{name}-lang
-%glib2_gsettings_schema_requires
 
 %description
 This packages contains the session manager for the Cinnamon Desktop.
 
 %prep
-%setup -q
+%autosetup
 
 %build
 %meson \
+  -Dfrequent_warnings=true \
   -Dipv6=true    \
   -Dxtrans=true
 %meson_build
@@ -81,7 +79,7 @@
 %doc AUTHORS README README.md
 %{_bindir}/%{name}
 %{_bindir}/%{name}-quit
-%{_libexecdir}/%{name}-check-accelerated*
+%{_libexecdir}/*
 %{_datadir}/%{name}/
 %{_datadir}/glib-2.0/schemas/org.cinnamon.*
 %{_datadir}/icons/hicolor/*/apps/%{name}-properties.*

++++++ cinnamon-session-6.0.4.tar.gz -> cinnamon-session-6.2.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-session-6.0.4/cinnamon-session/cinnamon-session.in 
new/cinnamon-session-6.2.1/cinnamon-session/cinnamon-session.in
--- old/cinnamon-session-6.0.4/cinnamon-session/cinnamon-session.in     
1970-01-01 01:00:00.000000000 +0100
+++ new/cinnamon-session-6.2.1/cinnamon-session/cinnamon-session.in     
2024-07-19 15:51:40.000000000 +0200
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+if [ "x$XDG_SESSION_TYPE" = "xwayland" ] &&
+   [ "x$XDG_SESSION_CLASS" != "xgreeter" ] &&
+   [  -n "$SHELL" ] &&
+   grep -q "$SHELL" /etc/shells &&
+   ! (echo "$SHELL" | grep -q "false") &&
+   ! (echo "$SHELL" | grep -q "nologin"); then
+  if [ "$1" != '-l' ]; then
+    exec bash -c "exec -l '$SHELL' -c '$0 -l $*'"
+  else
+    shift
+  fi
+fi
+
+exec @libexecdir@/cinnamon-session-binary "$@"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-session-6.0.4/cinnamon-session/csm-presence.c 
new/cinnamon-session-6.2.1/cinnamon-session/csm-presence.c
--- old/cinnamon-session-6.0.4/cinnamon-session/csm-presence.c  2024-02-08 
15:12:54.000000000 +0100
+++ new/cinnamon-session-6.2.1/cinnamon-session/csm-presence.c  2024-07-19 
15:51:40.000000000 +0200
@@ -64,16 +64,12 @@
 
 enum {
         PROP_0,
-        PROP_STATUS,
-        PROP_STATUS_TEXT,
         PROP_IDLE_ENABLED,
         PROP_IDLE_TIMEOUT,
 };
 
-
 enum {
         STATUS_CHANGED,
-        STATUS_TEXT_CHANGED,
         LAST_SIGNAL
 };
 
@@ -99,6 +95,10 @@
         return quark_volatile;
 }
 
+static void idle_became_active_cb (GnomeIdleMonitor *idle_monitor,
+                                   guint             id,
+                                   gpointer          user_data);
+
 static gboolean
 csm_presence_set_status_text (CsmPresence  *presence,
                               const char   *status_text,
@@ -120,6 +120,8 @@
 
         if (status_text != NULL) {
                 presence->priv->status_text = g_strdup (status_text);
+        } else {
+                presence->priv->status_text = g_strdup ("");
         }
 
         csm_exported_presence_set_status_text (presence->priv->skeleton, 
presence->priv->status_text);
@@ -128,11 +130,11 @@
         return TRUE;
 }
 
-static gboolean
+static void
 csm_presence_set_status (CsmPresence  *presence,
                          guint         status)
 {
-        g_return_val_if_fail (CSM_IS_PRESENCE (presence), FALSE);
+        g_return_if_fail (CSM_IS_PRESENCE (presence));
 
         if (status != presence->priv->status) {
                 presence->priv->status = status;
@@ -140,7 +142,6 @@
                 csm_exported_presence_emit_status_changed 
(presence->priv->skeleton, presence->priv->status);
                 g_signal_emit (presence, signals[STATUS_CHANGED], 0, 
presence->priv->status);
         }
-        return TRUE;
 }
 
 static void
@@ -158,6 +159,11 @@
                 /* save current status */
                 presence->priv->saved_status = presence->priv->status;
                 csm_presence_set_status (presence, CSM_PRESENCE_STATUS_IDLE);
+
+                gnome_idle_monitor_add_user_active_watch 
(presence->priv->idle_monitor,
+                                                          
idle_became_active_cb,
+                                                          presence,
+                                                          NULL);
         } else {
                 if (presence->priv->status != CSM_PRESENCE_STATUS_IDLE) {
                         g_debug ("CsmPresence: already not idle, ignoring");
@@ -171,27 +177,27 @@
         }
 }
 
-static gboolean
-on_idle_timeout (GnomeIdleMonitor *monitor,
-                 guint             id,
-                 gboolean          condition,
-                 CsmPresence      *presence)
+static void
+idle_became_idle_cb (GnomeIdleMonitor *idle_monitor,
+                     guint             id,
+                     gpointer          user_data)
 {
-        gboolean handled;
-
-        handled = TRUE;
-        set_session_idle (presence, condition);
+        CsmPresence *presence = user_data;
+        set_session_idle (presence, TRUE);
+}
 
-        return handled;
+static void
+idle_became_active_cb (GnomeIdleMonitor *idle_monitor,
+                       guint             id,
+                       gpointer          user_data)
+{
+        CsmPresence *presence = user_data;
+        set_session_idle (presence, FALSE);
 }
 
 static void
 reset_idle_watch (CsmPresence  *presence)
 {
-        if (presence->priv->idle_monitor == NULL) {
-                return;
-        }
-
         if (presence->priv->idle_watch_id > 0) {
                 g_debug ("CsmPresence: removing idle watch (%i)", 
presence->priv->idle_watch_id);
                 gnome_idle_monitor_remove_watch (presence->priv->idle_monitor,
@@ -199,12 +205,11 @@
                 presence->priv->idle_watch_id = 0;
         }
 
-        if (! presence->priv->screensaver_active
-            && presence->priv->idle_enabled
+        if (presence->priv->idle_enabled
             && presence->priv->idle_timeout > 0) {
                 presence->priv->idle_watch_id = 
gnome_idle_monitor_add_idle_watch (presence->priv->idle_monitor,
                                                                                
    presence->priv->idle_timeout,
-                                                                               
    (GnomeIdleMonitorWatchFunc) on_idle_timeout,
+                                                                               
    idle_became_idle_cb,
                                                                                
    presence,
                                                                                
    NULL);
                 g_debug ("CsmPresence: adding idle watch (%i) for %d secs",
@@ -229,11 +234,36 @@
         g_variant_get (parameters,
                        "(b)", &is_active);
 
-        g_debug ("screensaver status changed: %d", is_active);
+        if (presence->priv->screensaver_active != is_active) {
+                presence->priv->screensaver_active = is_active;
+                set_session_idle (presence, is_active);
+        }
+}
 
+static void
+screensaver_get_active_cb (GDBusProxy  *screensaver_proxy,
+                           GAsyncResult *res,
+                           CsmPresence *presence)
+{
+        g_autoptr(GVariant) data = NULL;
+        g_autoptr(GError) error = NULL;
+        gboolean is_active;
+
+        data = g_dbus_proxy_call_finish (screensaver_proxy, res, &error);
+        if (!data) {
+                if (error) {
+                        g_warning ("Could not retrieve current screensaver 
active state: %s",
+                                   error->message);
+                } else {
+                        g_warning ("Could not retrieve current screensaver 
active state!");
+                }
+
+                return;
+        }
+
+        g_variant_get (data, "(b)", &is_active);
         if (presence->priv->screensaver_active != is_active) {
                 presence->priv->screensaver_active = is_active;
-                reset_idle_watch (presence);
                 set_session_idle (presence, is_active);
         }
 }
@@ -248,14 +278,25 @@
 
         presence = CSM_PRESENCE (user_data);
         name_owner = g_dbus_proxy_get_name_owner (proxy);
+        if (name_owner == NULL) {
+                g_debug ("Detected that screensaver has left the bus");
 
-        if (name_owner && g_strcmp0 (name_owner, CS_NAME)) {
-                g_warning ("Detected that screensaver has appeared on the 
bus");
-        } else {
-                g_warning ("Detected that screensaver has left the bus");
+                presence->priv->screensaver_active = FALSE;
                 set_session_idle (presence, FALSE);
-                reset_idle_watch (presence);
+        } else {
+                g_debug ("Detected that screensaver has aquired the bus");
+
+                g_dbus_proxy_call (presence->priv->screensaver_proxy,
+                                   "GetActive",
+                                   NULL,
+                                   G_DBUS_CALL_FLAGS_NO_AUTO_START,
+                                   1000,
+                                   NULL,
+                                   (GAsyncReadyCallback) 
screensaver_get_active_cb,
+                                   presence);
         }
+
+        g_free (name_owner);
 }
 
 static gboolean
@@ -352,7 +393,8 @@
         }
 
         presence->priv->screensaver_proxy = g_dbus_proxy_new_sync 
(presence->priv->connection,
-                                                                   
G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START,
+                                                                   
G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START |
+                                                                   
G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES,
                                                                    NULL,
                                                                    CS_NAME,
                                                                    CS_PATH,
@@ -424,12 +466,6 @@
         self = CSM_PRESENCE (object);
 
         switch (prop_id) {
-        case PROP_STATUS:
-                csm_presence_set_status (self, g_value_get_uint (value));
-                break;
-        case PROP_STATUS_TEXT:
-                csm_presence_set_status_text (self, g_value_get_string 
(value), NULL);
-                break;
         case PROP_IDLE_ENABLED:
                 csm_presence_set_idle_enabled (self, g_value_get_boolean 
(value));
                 break;
@@ -453,12 +489,6 @@
         self = CSM_PRESENCE (object);
 
         switch (prop_id) {
-        case PROP_STATUS:
-                g_value_set_uint (value, self->priv->status);
-                break;
-        case PROP_STATUS_TEXT:
-                g_value_set_string (value, self->priv->status_text ? 
self->priv->status_text : "");
-                break;
         case PROP_IDLE_ENABLED:
                 g_value_set_boolean (value, self->priv->idle_enabled);
                 break;
@@ -482,15 +512,9 @@
                 presence->priv->idle_watch_id = 0;
         }
 
-        if (presence->priv->status_text != NULL) {
-                g_free (presence->priv->status_text);
-                presence->priv->status_text = NULL;
-        }
-
-        if (presence->priv->idle_monitor != NULL) {
-                g_object_unref (presence->priv->idle_monitor);
-                presence->priv->idle_monitor = NULL;
-        }
+        g_clear_pointer (&presence->priv->status_text, g_free);
+        g_clear_object (&presence->priv->idle_monitor);
+        g_clear_object (&presence->priv->screensaver_proxy);
 
         G_OBJECT_CLASS (csm_presence_parent_class)->finalize (object);
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-session-6.0.4/cinnamon-session/csm-presence.h 
new/cinnamon-session-6.2.1/cinnamon-session/csm-presence.h
--- old/cinnamon-session-6.0.4/cinnamon-session/csm-presence.h  2024-02-08 
15:12:54.000000000 +0100
+++ new/cinnamon-session-6.2.1/cinnamon-session/csm-presence.h  2024-07-19 
15:51:40.000000000 +0200
@@ -50,9 +50,6 @@
 
         void          (* status_changed)        (CsmPresence     *presence,
                                                  guint            status);
-        void          (* status_text_changed)   (CsmPresence     *presence,
-                                                 const char      *status_text);
-
 };
 
 typedef enum {
@@ -69,9 +66,6 @@
 } CsmPresenceError;
 
 #define CSM_PRESENCE_ERROR csm_presence_error_quark ()
-GType          csm_presence_error_get_type       (void);
-#define CSM_PRESENCE_TYPE_ERROR (csm_presence_error_get_type ())
-
 GQuark         csm_presence_error_quark          (void);
 
 GType          csm_presence_get_type             (void) G_GNUC_CONST;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.0.4/cinnamon-session/csm-util.c 
new/cinnamon-session-6.2.1/cinnamon-session/csm-util.c
--- old/cinnamon-session-6.0.4/cinnamon-session/csm-util.c      2024-02-08 
15:12:54.000000000 +0100
+++ new/cinnamon-session-6.2.1/cinnamon-session/csm-util.c      2024-07-19 
15:51:40.000000000 +0200
@@ -673,6 +673,8 @@
         g_variant_builder_open (&builder, G_VARIANT_TYPE ("as"));
         for (i = 0; variable_unsetlist[i] != NULL; i++)
                 g_variant_builder_add (&builder, "s", variable_unsetlist[i]);
+        for (i = 0; variable_blacklist[i] != NULL; i++)
+                g_variant_builder_add (&builder, "s", variable_blacklist[i]);
         g_variant_builder_close (&builder);
 
         g_variant_builder_open (&builder, G_VARIANT_TYPE ("as"));
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.0.4/cinnamon-session/main.c 
new/cinnamon-session-6.2.1/cinnamon-session/main.c
--- old/cinnamon-session-6.0.4/cinnamon-session/main.c  2024-02-08 
15:12:54.000000000 +0100
+++ new/cinnamon-session-6.2.1/cinnamon-session/main.c  2024-07-19 
15:51:40.000000000 +0200
@@ -40,7 +40,6 @@
 #include "csm-session-fill.h"
 #include "csm-store.h"
 #include "csm-system.h"
-#include <systemd/sd-journal.h>
 
 #define CSM_DBUS_NAME "org.gnome.SessionManager"
 
@@ -292,6 +291,8 @@
                 g_object_unref (manager);
         }
 
+        csm_util_export_activation_environment (NULL);
+
         g_bus_unown_name (name_owner_id);
 
         mdm_log_shutdown ();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.0.4/cinnamon-session/meson.build 
new/cinnamon-session-6.2.1/cinnamon-session/meson.build
--- old/cinnamon-session-6.0.4/cinnamon-session/meson.build     2024-02-08 
15:12:54.000000000 +0100
+++ new/cinnamon-session-6.2.1/cinnamon-session/meson.build     2024-07-19 
15:51:40.000000000 +0200
@@ -53,7 +53,7 @@
   gdbus_sources,
 ]
 
-executable('cinnamon-session',
+executable('cinnamon-session-binary',
   cinnamon_session_sources,
   dependencies: [
     cinnamon_desktop,
@@ -75,6 +75,18 @@
   ],
   include_directories: [ rootInclude ],
   install: true,
+  install_dir: get_option('libexecdir'),
+)
+
+script_conf = configuration_data()
+script_conf.set('libexecdir', get_option('prefix') / get_option('libexecdir'))
+
+configure_file(
+  input: 'cinnamon-session.in',
+  output: 'cinnamon-session',
+  install: true,
+  install_dir: get_option('bindir'),
+  configuration: script_conf
 )
 
 units = [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-session-6.0.4/cinnamon-session-quit/cinnamon-session-quit.py 
new/cinnamon-session-6.2.1/cinnamon-session-quit/cinnamon-session-quit.py
--- old/cinnamon-session-6.0.4/cinnamon-session-quit/cinnamon-session-quit.py   
2024-02-08 15:12:54.000000000 +0100
+++ new/cinnamon-session-6.2.1/cinnamon-session-quit/cinnamon-session-quit.py   
2024-07-19 15:51:40.000000000 +0200
@@ -253,6 +253,7 @@
             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.window.set_icon_name("system-log-out")
         elif self.mode == Action.SHUTDOWN:
             self.dialog_label.set_text(_("Shut down this system now?"))
             self.button_suspend.set_visible(can_suspend)
@@ -261,6 +262,7 @@
             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.window.set_icon_name("system-shutdown")
         elif self.mode == Action.RESTART:
             if not can_restart:
                 print("Restart not available")
@@ -270,6 +272,7 @@
             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.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.0.4/debian/changelog 
new/cinnamon-session-6.2.1/debian/changelog
--- old/cinnamon-session-6.0.4/debian/changelog 2024-02-08 15:12:54.000000000 
+0100
+++ new/cinnamon-session-6.2.1/debian/changelog 2024-07-19 15:51:40.000000000 
+0200
@@ -1,9 +1,29 @@
-cinnamon-session (6.0.4) virginia; urgency=medium
+cinnamon-session (6.2.1) wilma; urgency=medium
+
+  [ Leigh Scott ]
+  * Fix restart and shutdown (#172)
+
+ -- Clement Lefebvre <[email protected]>  Fri, 19 Jul 2024 14:51:34 +0100
+
+cinnamon-session (6.2.0) wilma; urgency=medium
+
+  [ Bobby Rong ]
+  * cinnamon-session: make sure wayland sessions get a login shell (#161)
+
+  [ Matt Turnbull ]
+  * Remove orphaned include (#164)
 
   [ Michael Webster ]
   * cinnamon-session-quit.py: Set logout window to keep-above and all- 
workspaces.
+  * cs-presence.c: Fix CsmPresence idle handling.
+  * csm-manager.c: Stop the user dbus-daemon at the end of the session.
+  * main.c: Reset the activation environment at the end of the session.
+  * csm-manager.c: Unset WAYLAND_DISPLAY during shutdown in a wayland session.
+
+  [ fredcw ]
+  * cinnamon-session-quit.py: add missing window icon (#170)
 
- -- Clement Lefebvre <[email protected]>  Thu, 08 Feb 2024 14:12:41 +0000
+ -- Clement Lefebvre <[email protected]>  Tue, 11 Jun 2024 15:41:40 +0100
 
 cinnamon-session (6.0.3) virginia; urgency=medium
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.0.4/meson.build 
new/cinnamon-session-6.2.1/meson.build
--- old/cinnamon-session-6.0.4/meson.build      2024-02-08 15:12:54.000000000 
+0100
+++ new/cinnamon-session-6.2.1/meson.build      2024-07-19 15:51:40.000000000 
+0200
@@ -1,8 +1,9 @@
 # https://github.com/linuxmint/cinnamon-session
-project('cinnamon-session',
-  [ 'c', ],
-  version: '6.0.4',
-  meson_version: '>=0.56.0',
+project(
+  'cinnamon-session',
+  ['c'],
+version : '6.2.1',
+meson_version : '>=0.56.0'
 )
 
 
################################################################################

Reply via email to