z572 pushed a commit to branch kde-team
in repository guix.

commit 06c1bdadeb4ce78308e0940533d1fc763cffb076
Author: Zheng Junjie <[email protected]>
AuthorDate: Tue Jul 9 22:42:52 2024 +0800

    services: plasma: Add dbus settings.
    
    * gnu/services/desktop.scm (plasma-dbus-service): New procedure.
    (plasma-desktop-service-type)[extensions]: Add It.
    
    * gnu/packages/kde-plasma.scm (plasma-workspace)[arguments]: Add
    remove-dbus-service phase.
    
    Change-Id: Iadadbff7183bc4655e4cb9bc28cd85df19511949
---
 gnu/packages/kde-plasma.scm | 10 +++++++++-
 gnu/services/desktop.scm    | 17 +++++++++++++++++
 2 files changed, 26 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/kde-plasma.scm b/gnu/packages/kde-plasma.scm
index 58c085ca6a..244fe49f23 100644
--- a/gnu/packages/kde-plasma.scm
+++ b/gnu/packages/kde-plasma.scm
@@ -2909,7 +2909,15 @@ 
fetchinitialplayertest|mprisdeclarativetest|mediakeystest|shelltest|\
 locationsrunnertest|testimagefinder|testimagelistmodel|\
 
testpackageimagelistmodel|testimageproxymodel|testslidemodel|testimagefrontend|\
 dbusservicewatchertest|klippertest|keystatetest|lockedtest|tst_triangleFilter|\
-testimagebackend)")))))))
+testimagebackend)"))))
+               ;; share/dbus-1/system-services have same name file
+               ;; when dbus-root-service-type merge it, wail report
+               ;; "file exists".
+               (add-after 'install 'remove-dbus-service
+                 (lambda _
+                   (delete-file
+                    (string-append
+                     #$output 
"/share/dbus-1/services/org.kde.fontinst.service")))))))
     (home-page "https://invent.kde.org/plasma/plasma-workspace";)
     (synopsis "Plasma workspace components")
     (description
diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm
index d0b9728d4a..2b64c57804 100644
--- a/gnu/services/desktop.scm
+++ b/gnu/services/desktop.scm
@@ -1785,6 +1785,21 @@ rules."
            "powerdevil"
            "plasma-firewall"))))
 
+(define (plasma-dbus-service config)
+  "Return the list of KDE Plasma dependencies that provide D-Bus services."
+  (let ((plasma-plasma (plasma-package config)))
+    (map (lambda (name)
+           ((package-direct-input-selector name) plasma-plasma))
+         '("plasma-desktop"
+           "plasma-workspace"
+           "kactivitymanagerd"
+           "plasma-disks"
+           "kinfocenter"
+           "libksysguard"
+           "ktexteditor"
+           "powerdevil"
+           "plasma-firewall"))))
+
 ;; see https://bugs.kde.org/show_bug.cgi?id=456210
 ;; if `kde' no exits, fallback to `other', and then unlock lockscreen not work,
 ;; so add it.
@@ -1799,6 +1814,8 @@ rules."
    (extensions
     (list (service-extension polkit-service-type
                              plasma-polkit-settings)
+          (service-extension dbus-root-service-type
+                             plasma-dbus-service)
           (service-extension pam-root-service-type
                              plasma-pam-services)
           (service-extension profile-service-type

Reply via email to