summary refs log tree commit diff
diff options
context:
space:
mode:
authorHartmut Goebel <h.goebel@crazy-compilers.com>2017-06-09 13:36:42 +0200
committerHartmut Goebel <h.goebel@crazy-compilers.com>2021-01-31 16:25:51 +0100
commit15dc1b11580b52a7e9d10645d74d9ee4ddecafff (patch)
tree7723d3d3c9c191eaa2f2b06a3f0feab65771b45d
parent249de422e7370d9c91580ae182f91440a76974df (diff)
downloadguix-15dc1b11580b52a7e9d10645d74d9ee4ddecafff.tar.gz
gnu: Add kscreen.
* gnu/packages/kde-plasma.scm (kscreen): New variable.
-rw-r--r--gnu/packages/kde-plasma.scm60
1 files changed, 60 insertions, 0 deletions
diff --git a/gnu/packages/kde-plasma.scm b/gnu/packages/kde-plasma.scm
index e2a9f09f2c..2a7af14515 100644
--- a/gnu/packages/kde-plasma.scm
+++ b/gnu/packages/kde-plasma.scm
@@ -414,6 +414,66 @@ Each of the red, green, and blue components can be adjusted individually, or
 all three components can be adjusted together.")
     (license license:gpl2+)))
 
+(define-public kscreen
+  (package
+    (name "kscreen")
+    (version "5.19.5")
+    (source
+     (origin
+      (method url-fetch)
+      (uri (string-append "mirror://kde/stable/plasma/" version
+                          "/kscreen-" version ".tar.xz"))
+      (sha256
+       (base32 "1s2ngg86128665mf6q7dnwv953jf2d4ad25klrm8wd85lj3wcwhd"))))
+    (build-system qt-build-system)
+    (arguments
+     `(#:tests? #f ;; TODO: tests fail even when blacklisted
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'check-setup
+           (lambda _
+             (setenv "HOME" (getcwd))
+             ;; The test suite requires a running X server.
+             (system "Xvfb :98 -screen 0 640x480x24 &")
+             (setenv "DISPLAY" ":98")
+             ;; blacklist failing test-functions TODO: make them pass
+             (with-output-to-file "bin/BLACKLIST"
+               (lambda _
+                 (display "[testNullConfig]\n*\n")))
+             #t)))))
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)
+       ("xorg-server" ,xorg-server))) ; required for the tests
+    (inputs
+     `(("kauth" ,kauth)
+       ("kcmutils" ,kcmutils)
+       ("kconfig" ,kconfig)
+       ("kconfigwidgets" ,kconfigwidgets)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kdbusaddons" ,kdbusaddons)
+       ("kdeclarative" ,kdeclarative)
+       ("kded" ,kded) ;; missing in CMakeList.txt
+       ("kglobalaccel" ,kglobalaccel)
+       ("ki18n" ,ki18n)
+       ("kiconthemes" ,kiconthemes)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("kwindowsystem" ,kwindowsystem)
+       ("kxmlgui" ,kxmlgui)
+       ("libkscreen" ,libkscreen)
+       ("plasma-framework" ,plasma-framework)
+       ("qtbase" ,qtbase)
+       ("qtdeclarative" ,qtdeclarative)
+       ("qtsensors", qtsensors)))
+    (home-page "https://projects.kde.org/projects/extragear/base/kscreen")
+    (synopsis "KDE monitor hotplug and screen handling")
+    (description "The KDE multiple monitor support is trying to be as smart as
+possible adapting the behavior of it to each use case making the configuration
+of monitors as simple as plugging them to your computer.
+
+This package contains the modules and plugins for monitor hot-plugging and
+automatic screen handling.")
+    (license license:lgpl2.1+)))
+
 (define-public kscreenlocker
   (package
     (name "kscreenlocker")