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-10-13 17:46:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cinnamon-session (Old)
 and      /work/SRC/openSUSE:Factory/.cinnamon-session.new.3698736 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "cinnamon-session"

Tue Oct 13 17:46:06 2026 rev:35 rq:1384542 version:6.6.4

Changes:
--------
--- /work/SRC/openSUSE:Factory/cinnamon-session/cinnamon-session.changes        
2026-03-27 06:37:48.517049207 +0100
+++ 
/work/SRC/openSUSE:Factory/.cinnamon-session.new.3698736/cinnamon-session.changes
   2026-10-13 17:47:12.897016893 +0200
@@ -1,0 +2,10 @@
+Tue Oct  6 21:00:04 UTC 2026 - Bjørn Lie <[email protected]>
+
+- Update to version 6.6.4:
+  * wayland: Terminate the session if cinnamon-wayland fails to
+    load
+  * Add xfce4-notifyd to -blacklist in SessionManager schema
+  * session: Add graphical-session.target support
+- Update version dependencies according to meson.build.
+
+-------------------------------------------------------------------

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

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

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

Other differences:
------------------
++++++ cinnamon-session.spec ++++++
--- /var/tmp/diff_new_pack.CepGSJ/_old  2026-10-13 17:47:13.603046486 +0200
+++ /var/tmp/diff_new_pack.CepGSJ/_new  2026-10-13 17:47:13.605046570 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           cinnamon-session
-Version:        6.6.3
+Version:        6.6.4
 Release:        0
 Summary:        The session manager for the Cinnamon Desktop
 License:        GPL-2.0-or-later AND LGPL-2.1-or-later
@@ -31,11 +31,11 @@
 BuildRequires:  tcpd-devel
 BuildRequires:  xmlto
 BuildRequires:  xtrans
-BuildRequires:  pkgconfig(cinnamon-desktop)
+BuildRequires:  pkgconfig(cinnamon-desktop) >= 6.0.0
 BuildRequires:  pkgconfig(dbus-glib-1)
 BuildRequires:  pkgconfig(gl)
-BuildRequires:  pkgconfig(glib-2.0)
-BuildRequires:  pkgconfig(gtk+-3.0)
+BuildRequires:  pkgconfig(glib-2.0) >= 2.37.3
+BuildRequires:  pkgconfig(gtk+-3.0) >= 3.0.0
 BuildRequires:  pkgconfig(json-glib-1.0)
 BuildRequires:  pkgconfig(libcanberra)
 BuildRequires:  pkgconfig(libsystemd)
@@ -83,4 +83,5 @@
 %{_datadir}/glib-2.0/schemas/org.cinnamon.*
 %{_datadir}/icons/hicolor/*/apps/%{name}-properties.*
 %{_mandir}/man?/%{name}*.?%{?ext_man}
+%{_userunitdir}/cinnamon-session.target
 

++++++ cinnamon-session-6.6.3.tar.gz -> cinnamon-session-6.6.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-session-6.6.3/cinnamon-session/csm-manager.c 
new/cinnamon-session-6.6.4/cinnamon-session/csm-manager.c
--- old/cinnamon-session-6.6.3/cinnamon-session/csm-manager.c   2026-02-11 
17:26:13.000000000 +0100
+++ new/cinnamon-session-6.6.4/cinnamon-session/csm-manager.c   2026-06-18 
16:35:02.000000000 +0200
@@ -272,9 +272,19 @@
 on_required_app_failure (CsmManager  *manager,
                          CsmApp      *app)
 {
-        csm_util_init_error (FALSE, "A program required by the session failed 
to start. App ID: '%s'. Startup ID: '%s'.",
-                             csm_app_peek_app_id (app),
-                             csm_app_peek_startup_id (app));
+        if (g_strcmp0 (g_getenv ("XDG_SESSION_TYPE"), "wayland") == 0) {
+                /* In Wayland, if cinnamon-wayland fails to start (required 
component), there's no compositor.
+                So if a required component fails, we want to terminate the 
session and go back to the DM. */
+                csm_util_init_error (TRUE, "A program required by the session 
failed to start. App ID: '%s'. Startup ID: '%s'. The session will be 
terminated.",
+                                     csm_app_peek_app_id (app),
+                                     csm_app_peek_startup_id (app));
+        } else {
+                /* In Xorg, even if Cinnamon fails to start we want to show 
nemo-desktop and cinnamon-killer-daemon.
+                So if a required component fails, we still keep the session 
alive. */
+                csm_util_init_error (FALSE, "A program required by the session 
failed to start. App ID: '%s'. Startup ID: '%s'.",
+                                     csm_app_peek_app_id (app),
+                                     csm_app_peek_startup_id (app));
+        }
 }
 
 static gboolean
@@ -863,6 +873,8 @@
 
         close_end_session_dialog (manager);
 
+        csm_util_stop_systemd_unit ("cinnamon-session.target", "replace", 
NULL);
+
         if (manager->priv->logout_mode == CSM_MANAGER_LOGOUT_MODE_FORCE) {
                 data.flags |= CSM_CLIENT_END_SESSION_FLAG_FORCEFUL;
         }
@@ -1513,6 +1525,7 @@
                 csm_xsmp_server_start_accepting_new_clients 
(manager->priv->xsmp_server);
                 csm_exported_manager_emit_session_running 
(manager->priv->skeleton);
                 update_idle (manager);
+                csm_util_start_systemd_unit ("cinnamon-session.target", 
"replace", NULL);
                 break;
         case CSM_MANAGER_PHASE_QUERY_END_SESSION:
                 csm_xsmp_server_stop_accepting_new_clients 
(manager->priv->xsmp_server);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.6.3/cinnamon-session/csm-util.c 
new/cinnamon-session-6.6.4/cinnamon-session/csm-util.c
--- old/cinnamon-session-6.6.3/cinnamon-session/csm-util.c      2026-02-11 
17:26:13.000000000 +0100
+++ new/cinnamon-session-6.6.4/cinnamon-session/csm-util.c      2026-06-18 
16:35:02.000000000 +0200
@@ -763,6 +763,72 @@
         return environment_updated;
 }
 
+gboolean
+csm_util_start_systemd_unit (const char  *unit,
+                             const char  *mode,
+                             GError     **error)
+{
+        g_autoptr(GDBusConnection) connection = NULL;
+        g_autoptr(GVariant)        reply = NULL;
+        GError          *bus_error = NULL;
+
+        connection = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, error);
+
+        if (connection == NULL)
+                return FALSE;
+
+        reply = g_dbus_connection_call_sync (connection,
+                                             "org.freedesktop.systemd1",
+                                             "/org/freedesktop/systemd1",
+                                             
"org.freedesktop.systemd1.Manager",
+                                             "StartUnit",
+                                             g_variant_new ("(ss)",
+                                                            unit, mode),
+                                             NULL,
+                                             G_DBUS_CALL_FLAGS_NONE,
+                                             -1, NULL, &bus_error);
+
+        if (bus_error != NULL) {
+                g_propagate_error (error, bus_error);
+                return FALSE;
+        }
+
+        return TRUE;
+}
+
+gboolean
+csm_util_stop_systemd_unit (const char  *unit,
+                             const char  *mode,
+                             GError     **error)
+{
+        g_autoptr(GDBusConnection) connection = NULL;
+        g_autoptr(GVariant)        reply = NULL;
+        GError          *bus_error = NULL;
+
+        connection = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, error);
+
+        if (connection == NULL)
+                return FALSE;
+
+        reply = g_dbus_connection_call_sync (connection,
+                                             "org.freedesktop.systemd1",
+                                             "/org/freedesktop/systemd1",
+                                             
"org.freedesktop.systemd1.Manager",
+                                             "StopUnit",
+                                             g_variant_new ("(ss)",
+                                                            unit, mode),
+                                             NULL,
+                                             G_DBUS_CALL_FLAGS_NONE,
+                                             -1, NULL, &bus_error);
+
+        if (bus_error != NULL) {
+                g_propagate_error (error, bus_error);
+                return FALSE;
+        }
+
+        return TRUE;
+}
+
 void
 csm_util_setenv (const char *variable,
                  const char *value)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.6.3/cinnamon-session/csm-util.h 
new/cinnamon-session-6.6.4/cinnamon-session/csm-util.h
--- old/cinnamon-session-6.6.3/cinnamon-session/csm-util.h      2026-02-11 
17:26:13.000000000 +0100
+++ new/cinnamon-session-6.6.4/cinnamon-session/csm-util.h      2026-06-18 
16:35:02.000000000 +0200
@@ -58,6 +58,13 @@
 void        csm_util_setenv                         (const char *variable,
                                                      const char *value);
 
+gboolean    csm_util_start_systemd_unit             (const char  *unit,
+                                                     const char  *mode,
+                                                     GError     **error);
+gboolean    csm_util_stop_systemd_unit              (const char  *unit,
+                                                     const char  *mode,
+                                                     GError     **error);
+
 // main.c, exit mainloop
 void        csm_quit                                (void);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.6.3/data/meson.build 
new/cinnamon-session-6.6.4/data/meson.build
--- old/cinnamon-session-6.6.3/data/meson.build 2026-02-11 17:26:13.000000000 
+0100
+++ new/cinnamon-session-6.6.4/data/meson.build 2026-06-18 16:35:02.000000000 
+0200
@@ -20,3 +20,6 @@
 
 # Re-compile gsettings
 meson.add_install_script('meson_install_schemas.py')
+
+subdir('systemd/user')
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-session-6.6.3/data/org.cinnamon.SessionManager.gschema.xml 
new/cinnamon-session-6.6.4/data/org.cinnamon.SessionManager.gschema.xml
--- old/cinnamon-session-6.6.3/data/org.cinnamon.SessionManager.gschema.xml     
2026-02-11 17:26:13.000000000 +0100
+++ new/cinnamon-session-6.6.4/data/org.cinnamon.SessionManager.gschema.xml     
2026-06-18 16:35:02.000000000 +0200
@@ -26,7 +26,7 @@
       <description>If enabled, cinnamon-session will not try to use Cinnamon's 
end-session dialog, instead preferring Gtk fallback.</description>
     </key>
     <key name="autostart-blacklist" type="as">
-      <default>['gnome-settings-daemon', 'org.gnome.SettingsDaemon', 
'gnome-fallback-mount-helper', 'gnome-screensaver', 'mate-screensaver', 
'mate-keyring-daemon', 'indicator-session', 'gnome-initial-setup-copy-worker', 
'gnome-initial-setup-first-login', 'gnome-welcome-tour', 
'xscreensaver-autostart', 'nautilus-autostart', 'nm-applet', 'caja', 
'xfce4-power-manager', 'touchegg']</default>
+      <default>['gnome-settings-daemon', 'org.gnome.SettingsDaemon', 
'gnome-fallback-mount-helper', 'gnome-screensaver', 'mate-screensaver', 
'mate-keyring-daemon', 'indicator-session', 'gnome-initial-setup-copy-worker', 
'gnome-initial-setup-first-login', 'gnome-welcome-tour', 
'xscreensaver-autostart', 'nautilus-autostart', 'nm-applet', 'caja', 
'xfce4-notifyd', 'xfce4-power-manager', 'touchegg']</default>
       <summary>Applications to block from autostarting or appearing in the app 
system</summary>
       <description>
         A list of applications or desktop names (without the .desktop 
extension) to prevent from
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-session-6.6.3/data/systemd/user/cinnamon-session.target 
new/cinnamon-session-6.6.4/data/systemd/user/cinnamon-session.target
--- old/cinnamon-session-6.6.3/data/systemd/user/cinnamon-session.target        
1970-01-01 01:00:00.000000000 +0100
+++ new/cinnamon-session-6.6.4/data/systemd/user/cinnamon-session.target        
2026-06-18 16:35:02.000000000 +0200
@@ -0,0 +1,14 @@
+[Unit]
+Description=Cinnamon graphical session
+Documentation=man:systemd.special(7)
+
+Wants=graphical-session.target
+Before=graphical-session.target
+
+Wants=graphical-session-pre.target
+After=graphical-session-pre.target
+
+PropagatesStopTo=graphical-session.target
+PropagatesStopTo=graphical-session-pre.target
+
+CollectMode=inactive-or-failed
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.6.3/data/systemd/user/meson.build 
new/cinnamon-session-6.6.4/data/systemd/user/meson.build
--- old/cinnamon-session-6.6.3/data/systemd/user/meson.build    1970-01-01 
01:00:00.000000000 +0100
+++ new/cinnamon-session-6.6.4/data/systemd/user/meson.build    2026-06-18 
16:35:02.000000000 +0200
@@ -0,0 +1,8 @@
+if enable_systemd
+install_data(
+  [
+    'cinnamon-session.target',
+  ],
+  install_dir: systemduserunitdir,
+)
+endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.6.3/debian/changelog 
new/cinnamon-session-6.6.4/debian/changelog
--- old/cinnamon-session-6.6.3/debian/changelog 2026-02-11 17:26:13.000000000 
+0100
+++ new/cinnamon-session-6.6.4/debian/changelog 2026-06-18 16:35:02.000000000 
+0200
@@ -1,3 +1,14 @@
+cinnamon-session (6.6.4) zena; urgency=medium
+
+  [ Clement Lefebvre ]
+  * wayland: Terminate the session if cinnamon-wayland fails to load
+
+  [ Leigh Scott ]
+  * Add  xfce4-notifyd to -blacklist in SessionManager schema (#203)
+  * session: Add graphical-session.target support (#204)
+
+ -- Clement Lefebvre <[email protected]>  Thu, 18 Jun 2026 16:34:49 +0200
+
 cinnamon-session (6.6.3) zena; urgency=medium
 
   [ Michael Webster ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-session-6.6.3/debian/cinnamon-session.install 
new/cinnamon-session-6.6.4/debian/cinnamon-session.install
--- old/cinnamon-session-6.6.3/debian/cinnamon-session.install  2026-02-11 
17:26:13.000000000 +0100
+++ new/cinnamon-session-6.6.4/debian/cinnamon-session.install  2026-06-18 
16:35:02.000000000 +0200
@@ -1,5 +1,6 @@
 usr/bin/cinnamon-session*
 usr/lib/*/cinnamon-session*
+usr/lib/systemd/user/cinnamon-session.target
 usr/share/cinnamon-session
 usr/share/glib-2.0/schemas/org.cinnamon.SessionManager.gschema.xml
 usr/share/man/*/cinnamon-session*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.6.3/meson.build 
new/cinnamon-session-6.6.4/meson.build
--- old/cinnamon-session-6.6.3/meson.build      2026-02-11 17:26:13.000000000 
+0100
+++ new/cinnamon-session-6.6.4/meson.build      2026-06-18 16:35:02.000000000 
+0200
@@ -2,7 +2,7 @@
 project(
   'cinnamon-session',
   ['c'],
-  version : '6.6.3',
+version : '6.6.4',
   meson_version : '>=0.56.0'
 )
 
@@ -58,6 +58,23 @@
 endif
 conf.set('HAVE_LOGIND', logind.found())
 
+systemd_opt = get_option('systemd')
+systemd_dep = dependency('libsystemd', required: systemd_opt.enabled())
+if systemd_dep.found()
+  systemduserunitdir = systemd_dep.get_variable(
+    pkgconfig: 'systemduserunitdir',
+    default_value: join_paths(get_option('prefix'), 'lib', 'systemd', 'user')
+  )
+  enable_systemd = true
+else
+  enable_systemd = systemd_dep.found() and not systemd_opt.disabled()
+  systemduserunitdir = join_paths(get_option('prefix'), 'lib', 'systemd', 
'user')
+endif
+
+message('Systemd integration: ' + (enable_systemd ? 'enabled' : 'disabled'))
+message('Systemd user unit dir: ' + systemduserunitdir)
+
+
 if gio_unix.found() and libelogind.found()
   elogind = declare_dependency(dependencies: [ gio_unix, libelogind ])
 else
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-session-6.6.3/meson_options.txt 
new/cinnamon-session-6.6.4/meson_options.txt
--- old/cinnamon-session-6.6.3/meson_options.txt        2026-02-11 
17:26:13.000000000 +0100
+++ new/cinnamon-session-6.6.4/meson_options.txt        2026-06-18 
16:35:02.000000000 +0200
@@ -1,3 +1,5 @@
 option('frequent_warnings',  type: 'boolean', value: false)
 option('ipv6',               type: 'boolean', value: true)
 option('xtrans',             type: 'boolean', value: true)
+option('systemd',            type: 'feature', value: 'auto')
+

Reply via email to