summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/kde-plasma.scm78
1 files changed, 78 insertions, 0 deletions
diff --git a/gnu/packages/kde-plasma.scm b/gnu/packages/kde-plasma.scm
index 15813f8507..ca01bbe91a 100644
--- a/gnu/packages/kde-plasma.scm
+++ b/gnu/packages/kde-plasma.scm
@@ -1192,6 +1192,84 @@ concentrates more on searching.")
     (description "Tools and widgets for the desktop")
     (license (list license:lgpl2.0+ license:gpl2+ license:fdl1.2+))))
 
+(define-public plasma-integration
+  (package
+    (name "plasma-integration")
+    (version "5.19.5")
+    (source
+     (origin
+      (method url-fetch)
+      (uri (string-append "mirror://kde/stable/plasma/" version
+                          "/plasma-integration-" version ".tar.xz"))
+      (sha256
+       (base32 "12b3zgmvqg3nbgbqm785bbqjvm5ysw5ikvqn04qnldlfwxadizgp"))))
+    (build-system qt-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (delete 'check)
+         ;; FIXME: re-enable checkes
+         ;; (add-after 'install 'check
+         ;;   (lambda _
+         ;;     ;; Exclude a "Received signal" test TODO: Make this test pass
+         ;;     (invoke "ctest" "."
+         ;;             "-E" "frameworkintegration-kfiledialog_unittest")))
+         (add-before 'check 'check-setup2
+           (lambda* (#:key outputs #:allow-other-keys)
+             (setenv "HOME" (getcwd))
+             (setenv "XDG_RUNTIME_DIR" "..")
+             (setenv "QT_PLUGIN_PATH"
+                     (string-append (assoc-ref outputs "out") "/lib/qt5/plugins:"
+                                    (getenv "QT_PLUGIN_PATH")))
+             ;; 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 "autotests/BLACKLIST"
+               (lambda _
+                 ;; In frameworkintegration-kdeplatformtheme_unittest
+                 (display "[testPlatformHints]\n*\n")
+                 (display "[testPlatformPalette]\n*\n")
+                 (display "[testPlatformHintChanges]\n*\n")
+                 ;; In frameworkintegration-kfiledialogqml_unittest
+                 (display "[testShowDialogParentless]\n*\n")
+                 (display "[testShowDialogWithParent]\n*\n")))
+             #t)))))
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)
+       ("dbus" ,dbus)
+       ("xorg-server" ,xorg-server) ; required for running the tests
+       ("pkg-config" ,pkg-config)))
+    (inputs
+     `(("breeze" ,breeze)
+       ;; Other distributions do not install these fonts as a dependency of
+       ;; this package.
+       ;;("font-google-noto" ,font-google-noto) ; runtime dependency
+       ;;("font-hack" ,font-hack) ; runtime dependency
+       ("kconfig" ,kconfig)
+       ("kconfigwidgets" ,kconfigwidgets)
+       ("ki18n" ,ki18n)
+       ("kiconthemes" ,kiconthemes)
+       ("kio" ,kio)
+       ("knotifications" ,knotifications)
+       ("kwayland" ,kwayland)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("kwindowsystem" ,kwindowsystem)
+       ("libxcursor" ,libxcursor)
+       ("perl" ,perl) ; for the kconf_update scripts
+       ("qtbase" ,qtbase)
+       ("qtdeclarative" ,qtdeclarative) ; for generating auto-tests
+       ("qtquickcontrols" ,qtquickcontrols) ; for running the tests
+       ("qtquickcontrols2" ,qtquickcontrols2)
+       ("qtx11extras" ,qtx11extras)
+       ("xcb-util" ,xcb-util)))
+    (home-page "https://invent.kde.org/plasma/plasma-integration")
+    (synopsis "Integration of Qt application with KDE workspaces")
+    (description "Plasma Framework Integration is a set of plugins responsible
+for better integration of Qt applications when running on a KDE Plasma
+workspace.  Applications do not need to link to this directly.")
+    (license license:lgpl3+))) ;; KDE e.V.
+
 (define-public plasma-wayland-protocols
   (package
     (name "plasma-wayland-protocols")