aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZheng Junjie <zhengjunjie@iscas.ac.cn>2024-07-09 22:42:52 +0800
committerZheng Junjie <zhengjunjie@iscas.ac.cn>2024-07-18 10:45:34 +0800
commit06c1bdadeb4ce78308e0940533d1fc763cffb076 (patch)
treef397a1ff8996b3c691a2be4dfcefdf5bc5b1e9e7
parentf96ddc6227cac801e8edf3096997176212809de0 (diff)
downloadguix-06c1bdadeb4ce78308e0940533d1fc763cffb076.tar.gz
guix-06c1bdadeb4ce78308e0940533d1fc763cffb076.zip
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
-rw-r--r--gnu/packages/kde-plasma.scm10
-rw-r--r--gnu/services/desktop.scm17
2 files changed, 26 insertions, 1 deletions
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