Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package cinnamon-screensaver for 
openSUSE:Factory checked in at 2023-12-03 20:48:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cinnamon-screensaver (Old)
 and      /work/SRC/openSUSE:Factory/.cinnamon-screensaver.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "cinnamon-screensaver"

Sun Dec  3 20:48:37 2023 rev:27 rq:1128874 version:6.0.0

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/cinnamon-screensaver/cinnamon-screensaver.changes    
    2023-06-11 19:57:27.987950728 +0200
+++ 
/work/SRC/openSUSE:Factory/.cinnamon-screensaver.new.25432/cinnamon-screensaver.changes
     2023-12-03 20:48:57.606099630 +0100
@@ -1,0 +2,12 @@
+Sat Nov 25 19:11:28 UTC 2023 - Dirk Müller <dmuel...@suse.com>
+
+- update to 6.0.0:
+  * Don't use libaccountsservice, which can block startup.
+  * Update issue templates.
+  * Fix meson.build deprecations up to 0.56.0
+  * Disable screensaver in wayland sessions
+  * muffinClient.py: Fix typo and clean up Python
+  * cinnamon-screensaver-command: Only try an action if the proxy
+    activation was successful.
+
+-------------------------------------------------------------------

Old:
----
  cinnamon-screensaver-5.8.0.tar.gz

New:
----
  cinnamon-screensaver-6.0.0.tar.gz

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

Other differences:
------------------
++++++ cinnamon-screensaver.spec ++++++
--- /var/tmp/diff_new_pack.9TwkDl/_old  2023-12-03 20:48:58.202121517 +0100
+++ /var/tmp/diff_new_pack.9TwkDl/_new  2023-12-03 20:48:58.206121665 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           cinnamon-screensaver
-Version:        5.8.0
+Version:        6.0.0
 Release:        0
 Summary:        Cinnamon screensaver and locker
 License:        GPL-2.0-or-later

++++++ cinnamon-screensaver-5.8.0.tar.gz -> cinnamon-screensaver-6.0.0.tar.gz 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-screensaver-5.8.0/.github/ISSUE_TEMPLATE/bug_report.yaml 
new/cinnamon-screensaver-6.0.0/.github/ISSUE_TEMPLATE/bug_report.yaml
--- old/cinnamon-screensaver-5.8.0/.github/ISSUE_TEMPLATE/bug_report.yaml       
1970-01-01 01:00:00.000000000 +0100
+++ new/cinnamon-screensaver-6.0.0/.github/ISSUE_TEMPLATE/bug_report.yaml       
2023-11-19 14:43:43.000000000 +0100
@@ -0,0 +1,90 @@
+name: Bug Report
+description: File a bug report
+body:
+  - type: markdown
+    attributes:
+      value: |
+        ### STOP! Before continuing:
+        - Please try searching for any existing report that may match the 
behavior you're seeing. *If you find one, add to that issue, instead of opening 
a new one*. Include any relevant details that may differ from the original 
author's.
+        - Check your logs - there may be some obvious cause for your trouble - 
in Linux Mint you can check ~/.xsession-errors (a hidden file in your Home 
folder).
+        - Run cinnamon-screensaver from a terminal to see if any errors or 
warnings are printed while reproducing the issue: `cinnamon-screensaver --debug 
--hold`
+        - If this is a *crash*, provide information about it if possible 
(CoreDump file, stack trace, etc...). In Linux Mint you can check the System 
Reports program. Entries may show as 'backup-locker' as well.
+        ---
+
+        Thank you for taking the time to report this issue. To allow us to 
work as efficiently as possible at resolving this, we need some information 
from you.
+
+  - type: input
+    id: distro
+    attributes:
+      label: Distribution
+      description: Which Linux distribution are you using? Please be as 
specific as possible.
+      placeholder: "example: Mint 21.1"
+    validations:
+      required: true
+
+  - type: input
+    id: pkgver
+    attributes:
+      label: Package version
+      description: Please provide the cinnamon-screensaver version. You can 
get this by running `cinnamon-screensaver --version` in a terminal.
+      placeholder: "example: 5.8.0"
+    validations:
+      required: true
+
+  - type: input
+    id: graphics
+    attributes:
+      label: Graphics hardware in use
+      description: Please provide information about your graphics hardware, if 
known. If you are using a dual-gpu system please specify that also.
+      placeholder: "example: NVIDIA GeForce GTX 1660 TI"
+    validations:
+      required: false
+
+  - type: dropdown
+    id: frequency
+    attributes:
+      label: Frequency
+      description: How often does this behavior occur?
+      options:
+        - Always
+        - Quite often
+        - Only occasionally
+    validations:
+      required: true
+
+  - type: textarea
+    id: current-behavior
+    attributes:
+      label: Bug description
+      description: Please describe what is happening
+    validations:
+      required: true
+
+  - type: textarea
+    id: steps
+    attributes:
+      label: Steps to reproduce
+      description: Please try to provide **detailed** steps on the most direct 
way to reproduce this issue. The chances of a bug being fixed go up 
**considerably** if we are able to duplicate the behavior ourselves.
+    validations:
+      required: true
+
+  - type: textarea
+    id: expected-behavior
+    attributes:
+      label: Expected behavior
+      description: Describe what you think should happen instead of the 
current behavior.
+    validations:
+      required: true
+
+  - type: textarea
+    id: more-info
+    attributes:
+      label: Additional information
+      description: You can add any other information you think may be relevant.
+    validations:
+      required: false
+
+  - type: markdown
+    attributes:
+      value: |
+        #### By submitting this report you agree to behave respectfully and in 
a mature manner. If in doubt, refer to the [Golden 
Rule](https://en.wikipedia.org/wiki/Golden_Rule) and [Github's Community 
Guidelines](https://docs.github.com/en/site-policy/github-terms/github-community-guidelines).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-screensaver-5.8.0/.github/ISSUE_TEMPLATE/feature_request.md 
new/cinnamon-screensaver-6.0.0/.github/ISSUE_TEMPLATE/feature_request.md
--- old/cinnamon-screensaver-5.8.0/.github/ISSUE_TEMPLATE/feature_request.md    
1970-01-01 01:00:00.000000000 +0100
+++ new/cinnamon-screensaver-6.0.0/.github/ISSUE_TEMPLATE/feature_request.md    
2023-11-19 14:43:43.000000000 +0100
@@ -0,0 +1,12 @@
+---
+name: Feature request (OBSOLETE)
+about: Feature requests are no longer accepted here, please use 
https://github.com/orgs/linuxmint/discussions instead.
+title: ""
+labels: ["FEATURE REQUEST"]
+assignees: ''
+
+---
+
+Please use:
+
+https://github.com/orgs/linuxmint/discussions
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-screensaver-5.8.0/.github/ISSUE_TEMPLATE.md 
new/cinnamon-screensaver-6.0.0/.github/ISSUE_TEMPLATE.md
--- old/cinnamon-screensaver-5.8.0/.github/ISSUE_TEMPLATE.md    2023-06-01 
15:08:05.000000000 +0200
+++ new/cinnamon-screensaver-6.0.0/.github/ISSUE_TEMPLATE.md    1970-01-01 
01:00:00.000000000 +0100
@@ -1,21 +0,0 @@
-
-```
- * Cinnamon-Screensaver version (cinnamon-screensaver --version)
- * Distribution - (Mint 17.2, Arch, Fedora 25, etc...)
- * Graphics hardware *and* driver used
- * 32 or 64 bit
- ```
-
-**Issue**
-
-
-
-**Steps to reproduce**
-
-
-
-**Expected behaviour**
-
-
-
-**Other information**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-screensaver-5.8.0/debian/changelog 
new/cinnamon-screensaver-6.0.0/debian/changelog
--- old/cinnamon-screensaver-5.8.0/debian/changelog     2023-06-01 
15:08:05.000000000 +0200
+++ new/cinnamon-screensaver-6.0.0/debian/changelog     2023-11-19 
14:43:43.000000000 +0100
@@ -1,3 +1,28 @@
+cinnamon-screensaver (6.0.0) virginia; urgency=medium
+
+  [ Michael Webster ]
+  * Don't use libaccountsservice, which can block startup.
+  * Update issue templates.
+
+  [ Rick Calixte ]
+  * Fix meson.build deprecations up to 0.56.0 (#444)
+
+  [ Michael Webster ]
+  * Disable screensaver in wayland sessions
+  * debian/control: Remove unused build dep librsvg.
+
+ -- Clement Lefebvre <r...@linuxmint.com>  Sun, 19 Nov 2023 13:42:28 +0000
+
+cinnamon-screensaver (5.8.1) victoria; urgency=medium
+
+  [ Rick Calixte ]
+  * muffinClient.py: Fix typo and clean up Python (#435)
+
+  [ Michael Webster ]
+  * cinnamon-screensaver-command: Only try an action if the proxy activation 
was successful.
+
+ -- Clement Lefebvre <r...@linuxmint.com>  Fri, 07 Jul 2023 15:17:46 +0200
+
 cinnamon-screensaver (5.8.0) victoria; urgency=medium
 
   [ IMarvinTPA ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-screensaver-5.8.0/debian/control 
new/cinnamon-screensaver-6.0.0/debian/control
--- old/cinnamon-screensaver-5.8.0/debian/control       2023-06-01 
15:08:05.000000000 +0200
+++ new/cinnamon-screensaver-6.0.0/debian/control       2023-11-19 
14:43:43.000000000 +0100
@@ -13,7 +13,6 @@
  libglib2.0-dev (>= 2.37.3),
  libgtk-3-dev (>= 3.22),
  libpam0g-dev,
- librsvg2-bin,
  libxdo-dev,
  libxext-dev,
  meson (>= 0.40.0),
@@ -25,7 +24,6 @@
 Pre-Depends: ${misc:Pre-Depends}
 Depends:
  cinnamon-desktop-data (>= 3.5),
- gir1.2-accountsservice-1.0,
  gir1.2-cinnamondesktop-3.0 (>= 4.8),
  gir1.2-gkbd-3.0,
  gir1.2-glib-2.0,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-screensaver-5.8.0/libcscreensaver/meson.build 
new/cinnamon-screensaver-6.0.0/libcscreensaver/meson.build
--- old/cinnamon-screensaver-5.8.0/libcscreensaver/meson.build  2023-06-01 
15:08:05.000000000 +0200
+++ new/cinnamon-screensaver-6.0.0/libcscreensaver/meson.build  2023-11-19 
14:43:43.000000000 +0100
@@ -87,6 +87,20 @@
     ],
     'org.cinnamon.Muffin.DisplayConfig'
   ],
+  [
+    'cs-accounts-service-proxy',
+    [
+      ['org.freedesktop.Accounts', 'org.gtk.GDBus.C.Name', 'AccountsService']
+    ],
+    'org.freedesktop.Accounts'
+  ],
+  [
+    'cs-accounts-user-proxy',
+    [
+      ['org.freedesktop.Accounts.User', 'org.gtk.GDBus.C.Name', 'AccountsUser']
+    ],
+    'org.freedesktop.Accounts.User'
+  ],
 ]
 
 dbus_built = []
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-screensaver-5.8.0/libcscreensaver/org.freedesktop.Accounts.User.xml
 
new/cinnamon-screensaver-6.0.0/libcscreensaver/org.freedesktop.Accounts.User.xml
--- 
old/cinnamon-screensaver-5.8.0/libcscreensaver/org.freedesktop.Accounts.User.xml
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/cinnamon-screensaver-6.0.0/libcscreensaver/org.freedesktop.Accounts.User.xml
    2023-11-19 14:43:43.000000000 +0100
@@ -0,0 +1,38 @@
+<!DOCTYPE node PUBLIC
+"-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
+"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd"; >
+<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd";>
+  <interface name="org.freedesktop.Accounts.User">
+
+  <property name="RealName" type="s" access="read">
+    <doc:doc>
+      <doc:description>
+        <doc:para>
+          The users real name.
+        </doc:para>
+      </doc:description>
+    </doc:doc>
+  </property>
+
+  <property name="IconFile" type="s" access="read">
+    <doc:doc>
+      <doc:description>
+        <doc:para>
+           The filename of a png file containing the users icon.
+        </doc:para>
+      </doc:description>
+    </doc:doc>
+  </property>
+
+  <property name="HomeDirectory" type="s" access="read">
+    <doc:doc>
+      <doc:description>
+        <doc:para>
+          The users home directory.
+        </doc:para>
+      </doc:description>
+    </doc:doc>
+  </property>
+
+  </interface>
+</node>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-screensaver-5.8.0/libcscreensaver/org.freedesktop.Accounts.xml 
new/cinnamon-screensaver-6.0.0/libcscreensaver/org.freedesktop.Accounts.xml
--- old/cinnamon-screensaver-5.8.0/libcscreensaver/org.freedesktop.Accounts.xml 
1970-01-01 01:00:00.000000000 +0100
+++ new/cinnamon-screensaver-6.0.0/libcscreensaver/org.freedesktop.Accounts.xml 
2023-11-19 14:43:43.000000000 +0100
@@ -0,0 +1,31 @@
+<!DOCTYPE node PUBLIC
+"-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
+"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd"; >
+<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd";>
+  <interface name="org.freedesktop.Accounts">
+
+    <!-- ************************************************************ -->
+
+    <method name="FindUserByName">
+      <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
+      <arg name="name" direction="in" type="s">
+        <doc:doc><doc:summary>The username to look up</doc:summary></doc:doc>
+      </arg>
+      <arg name="user" direction="out" type="o">
+        <doc:doc><doc:summary>Object path of user</doc:summary></doc:doc>
+      </arg>
+
+      <doc:doc>
+        <doc:description>
+          <doc:para>
+            Finds a user by its username.
+          </doc:para>
+        </doc:description>
+        <doc:errors>
+          <doc:error name="org.freedesktop.Accounts.Error.Failed">if no user 
with the given username exists</doc:error>
+        </doc:errors>
+      </doc:doc>
+    </method>
+
+  </interface>
+</node>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-screensaver-5.8.0/meson.build 
new/cinnamon-screensaver-6.0.0/meson.build
--- old/cinnamon-screensaver-5.8.0/meson.build  2023-06-01 15:08:05.000000000 
+0200
+++ new/cinnamon-screensaver-6.0.0/meson.build  2023-11-19 14:43:43.000000000 
+0100
@@ -1,4 +1,4 @@
-project('cinnamon-screensaver', 'c', version: '5.8.0', meson_version: 
'>=0.46.0')
+project('cinnamon-screensaver', 'c', version: '6.0.0', meson_version: 
'>=0.56.0')
 
 cc = meson.get_compiler('c')
 
@@ -50,7 +50,7 @@
   xdo = cc.find_library('xdo')
 endif
 
-dbus_services_dir = 
dependency('dbus-1').get_pkgconfig_variable('session_bus_services_dir', 
define_variable: ['datadir', datadir])
+dbus_services_dir = dependency('dbus-1').get_variable(pkgconfig: 
'session_bus_services_dir', pkgconfig_define: ['datadir', datadir])
 
 # check for symbols and headers
 foreach header : [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-screensaver-5.8.0/src/cinnamon-screensaver-command.py 
new/cinnamon-screensaver-6.0.0/src/cinnamon-screensaver-command.py
--- old/cinnamon-screensaver-5.8.0/src/cinnamon-screensaver-command.py  
2023-06-01 15:08:05.000000000 +0200
+++ new/cinnamon-screensaver-6.0.0/src/cinnamon-screensaver-command.py  
2023-11-19 14:43:43.000000000 +0100
@@ -4,6 +4,8 @@
 gi.require_version('CScreensaver', '1.0')
 
 from gi.repository import GLib, CScreensaver, Gio
+import os
+import sys
 import signal
 import argparse
 import gettext
@@ -91,12 +93,11 @@
     def _on_proxy_ready(self, object, result, data=None):
         try:
             self.proxy = 
CScreensaver.ScreenSaverProxy.new_for_bus_finish(result)
-        except:
-            print("Can't connect to screensaver!")
+            self.perform_action()
+        except GLib.Error as e:
+            print("Can't connect to screensaver: %d - %s" % (e.code, 
e.message))
             self.mainloop.quit()
 
-        self.perform_action()
-
     def perform_action(self):
         if self.action_id == Action.EXIT:
             self.proxy.call_quit_sync()
@@ -121,6 +122,12 @@
         self.mainloop.quit()
 
 if __name__ == "__main__":
+    try:
+        if os.environ["WAYLAND_DISPLAY"]:
+            print("Cinnamon Screensaver is unavailable on Wayland.")
+            sys.exit(0)
+    except KeyError:
+        pass
 
     ml = GLib.MainLoop.new(None, True)
     main = ScreensaverCommand(ml)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-screensaver-5.8.0/src/cinnamon-screensaver-main.py 
new/cinnamon-screensaver-6.0.0/src/cinnamon-screensaver-main.py
--- old/cinnamon-screensaver-5.8.0/src/cinnamon-screensaver-main.py     
2023-06-01 15:08:05.000000000 +0200
+++ new/cinnamon-screensaver-6.0.0/src/cinnamon-screensaver-main.py     
2023-11-19 14:43:43.000000000 +0100
@@ -12,6 +12,16 @@
 import argparse
 import os
 import setproctitle
+import sys
+
+# Do this before importing ScreensaverService as that triggers all of the dbus 
services
+# including the XAppKbdLayoutController which is x11 only.
+try:
+    if os.environ["WAYLAND_DISPLAY"]:
+        print("Cinnamon Screensaver is unavailable on Wayland.")
+        sys.exit(0)
+except KeyError:
+    pass
 
 import config
 import status
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-screensaver-5.8.0/src/dbusdepot/accountsServiceClient.py 
new/cinnamon-screensaver-6.0.0/src/dbusdepot/accountsServiceClient.py
--- old/cinnamon-screensaver-5.8.0/src/dbusdepot/accountsServiceClient.py       
2023-06-01 15:08:05.000000000 +0200
+++ new/cinnamon-screensaver-6.0.0/src/dbusdepot/accountsServiceClient.py       
2023-11-19 14:43:43.000000000 +0100
@@ -1,9 +1,9 @@
 #!/usr/bin/python3
 
 import gi
-gi.require_version('AccountsService', '1.0')
-from gi.repository import GObject, AccountsService
+from gi.repository import GObject, CScreensaver, Gio, GLib
 import os
+import time
 
 from util import utils, trackers
 
@@ -12,41 +12,74 @@
     Singleton for working with the AccountsService, which we use
     to retrieve the user's face image and their real name.
     """
+    ACCOUNTS_SERVICE = "org.freedesktop.Accounts"
+    ACCOUNTS_PATH    = "/org/freedesktop/Accounts"
+
     __gsignals__ = {
-        'account-loaded': (GObject.SignalFlags.RUN_LAST, None, ()),
+        'accounts-ready': (GObject.SignalFlags.RUN_LAST, None, ()),
     }
 
     def __init__(self):
         super(AccountsServiceClient, self).__init__()
 
-        self.is_loaded = False
+        self.accounts = None
+        self.user = None
+
+        print("Loading AccountsService")
 
-        self.service = 
AccountsService.UserManager.get_default().get_user(utils.get_user_name())
-        trackers.con_tracker_get().connect(self.service,
-                                           "notify::is-loaded",
-                                           self.on_accounts_service_loaded)
-
-    def on_accounts_service_loaded(self, service, param):
-        trackers.con_tracker_get().disconnect(self.service,
-                                              "notify::is-loaded",
-                                              self.on_accounts_service_loaded)
+        CScreensaver.AccountsServiceProxy.new_for_bus(Gio.BusType.SYSTEM,
+                                                      
Gio.DBusProxyFlags.DO_NOT_AUTO_START,
+                                                      self.ACCOUNTS_SERVICE,
+                                                      self.ACCOUNTS_PATH,
+                                                      None,
+                                                      
self.on_accounts_connected)
+
+    def on_accounts_connected(self, source, res):
+        try:
+            self.accounts = 
CScreensaver.AccountsServiceProxy.new_for_bus_finish(res)
+        except GLib.Error as e:
+            print(f"Could not connect to AccountsService: {e}", flush=True)
+            return
+
+        self.accounts.call_find_user_by_name(utils.get_user_name(), None, 
self.got_user_proxy)
+
+    def got_user_proxy(self, source, res):
+        try:
+            proxy_path = self.accounts.call_find_user_by_name_finish(res)
+        except GLib.Error as e:
+            print(f"Could not get AccountsService User object path: {e}", 
flush=True)
+            return
+
+        CScreensaver.AccountsUserProxy.new_for_bus(Gio.BusType.SYSTEM,
+                                                   Gio.DBusProxyFlags.NONE,
+                                                   self.ACCOUNTS_SERVICE,
+                                                   proxy_path,
+                                                   None,
+                                                   self.on_user_loaded)
+
+    def on_user_loaded(self, source, res):
+        try:
+            self.user = CScreensaver.AccountsUserProxy.new_for_bus_finish(res)
+        except GLib.Error as e:
+            print(f"Could not create AccountsService.User: {e}", flush=True)
 
-        self.is_loaded = True
-        self.emit("account-loaded")
+        print("AccountsService ready")
+        self.emit("accounts-ready")
 
     def get_real_name(self):
-        return self.service.get_real_name()
+        if self.user is not None:
+            return self.user.get_property("real-name")
+
+        return None
 
     def get_face_path(self):
-        face_path = None
-        home_path = self.service.get_home_dir()
-        if home_path is None:
-            home_path = os.path.expanduser('~')
-
-        for path in [os.path.join(home_path, ".face"),
-                     self.service.get_icon_file()]:
-            if os.path.exists(path):
-                face_path = path
-                break
+        face = os.path.join(GLib.get_home_dir(), ".face")
+        if os.path.exists(face):
+            return face
+
+        if self.user is not None:
+            accounts_path = self.user.get_property("icon-file")
+            if os.path.exists(accounts_path):
+                    return accounts_path
 
-        return face_path
+        return None
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cinnamon-screensaver-5.8.0/src/dbusdepot/muffinClient.py 
new/cinnamon-screensaver-6.0.0/src/dbusdepot/muffinClient.py
--- old/cinnamon-screensaver-5.8.0/src/dbusdepot/muffinClient.py        
2023-06-01 15:08:05.000000000 +0200
+++ new/cinnamon-screensaver-6.0.0/src/dbusdepot/muffinClient.py        
2023-11-19 14:43:43.000000000 +0100
@@ -1,9 +1,9 @@
 #!/usr/bin/python3
 
+import gi
+gi.require_version('CScreensaver', '1.0')
 from gi.repository import GLib, Gio, GObject, CScreensaver
 
-import status
-
 # TODO
 # self.monitors, etc.. replace or at least prefer this over CsScreen, as it 
will be more accurate.
 # Nothing currently listens to muffin-config-changed. This class is only used 
to initialize the event filters.
@@ -34,7 +34,7 @@
             self.proxy.connect("notify::g-name-owner", 
self.on_name_owner_changed)
             self.update()
         except GLib.Error as e:
-            print("Could not connect to Muffin's DisplayConfig service", 
flush=True)
+            print(f"Could not connect to Muffin's DisplayConfig service: {e}", 
flush=True)
 
     def on_monitors_changed(self, proxy):
         self.update()
@@ -51,13 +51,13 @@
         old_scaling = self.using_fractional_scaling
 
         if self.proxy.get_name_owner() is None:
-            print("Muffin not running, skipping fractinal scaling check.")
+            print("Muffin not running, skipping fractional scaling check.")
             return False
 
         try:
-            serial, monitors, logical_monitors, properties = 
self.proxy.call_get_current_state_sync(None)
+            logical_monitors = self.proxy.call_get_current_state_sync(None)[2]
         except GLib.Error as e:
-            print("Could not read current state from Muffin: %s" % e.message, 
flush=True)
+            print(f"Could not read current state from Muffin: {e}", flush=True)
             self.using_fractional_scaling = False
             return self.using_fractional_scaling != old_scaling
 
@@ -65,7 +65,7 @@
         previous_scale = -1
 
         for monitor in logical_monitors.unpack():
-            x, y, scale, transform, primary, monitors, properties = monitor
+            scale = monitor[2]
 
             # one or more monitors using some non-integer scale.
             if int(scale) != scale:
@@ -80,7 +80,7 @@
             previous_scale = scale
 
         self.using_fractional_scaling = fractional
-        print("Fractional scaling active: %r" % self.using_fractional_scaling, 
flush=True)
+        print(f"Fractional scaling active: {self.using_fractional_scaling}", 
flush=True)
         return self.using_fractional_scaling != old_scaling
 
     def get_using_fractional_scaling(self):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cinnamon-screensaver-5.8.0/src/unlock.py 
new/cinnamon-screensaver-6.0.0/src/unlock.py
--- old/cinnamon-screensaver-5.8.0/src/unlock.py        2023-06-01 
15:08:05.000000000 +0200
+++ new/cinnamon-screensaver-6.0.0/src/unlock.py        2023-11-19 
14:43:43.000000000 +0100
@@ -134,12 +134,11 @@
         self.update_realname_label()
 
         self.account_client = singletons.AccountsServiceClient
-        if self.account_client.is_loaded:
-            self.set_user_details()
-        else:
-            trackers.con_tracker_get().connect(self.account_client,
-                                               "account-loaded",
-                                               self.on_account_client_loaded)
+
+        self.set_user_details()
+        trackers.con_tracker_get().connect(self.account_client,
+                                           "accounts-ready",
+                                           self.on_accounts_ready)
 
         self.keymap = Gdk.Keymap.get_default()
 
@@ -251,13 +250,13 @@
         else:
             self.capslock_label.set_text("")
 
-    def on_account_client_loaded(self, client):
+    def on_accounts_ready(self, client):
         """
         Handler for the AccountsService - requests the user real name and 
.face image.
         """
         trackers.con_tracker_get().disconnect(self.account_client,
-                                           "account-loaded",
-                                           self.on_account_client_loaded)
+                                              "accounts-ready",
+                                              self.on_accounts_ready)
 
         self.set_user_details()
 

Reply via email to