diff --git a/gnu/local.mk b/gnu/local.mk index 16bb704933..cd1fd6e419 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -253,8 +253,9 @@ GNU_SYSTEM_MODULES = \ %D%/packages/jrnl.scm \ %D%/packages/jose.scm \ %D%/packages/julia.scm \ - %D%/packages/kde.scm \ + %D%/packages/kde.scm \ %D%/packages/kde-frameworks.scm \ + %D%/packages/kde-plasma.scm \ %D%/packages/kerberos.scm \ %D%/packages/key-mon.scm \ %D%/packages/kodi.scm \ diff --git a/gnu/packages/kde-plasma.scm b/gnu/packages/kde-plasma.scm new file mode 100644 index 0000000000..ab35eab87a --- /dev/null +++ b/gnu/packages/kde-plasma.scm @@ -0,0 +1,129 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016 Thomas Danckaert +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages kde-plasma) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix build-system cmake) + #:use-module (gnu packages compression) + #:use-module (gnu packages glib) + #:use-module (gnu packages kde-frameworks) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages qt) + #:use-module (gnu packages xorg)) + +(define-public libkscreen + (package + (name "libkscreen") + (version "5.13.5") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/plasma/" version "/" + name "-" version ".tar.xz")) + (sha256 + (base32 "04719va15i66qn1xqx318v6risxhp8bfcnhxh9mqm5h9qx5c6c4k")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ;; For testing. + ("dbus" ,dbus))) + (inputs + `(("kwayland" ,kwayland) + ("libxrandr" ,libxrandr) + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras))) + (arguments + '(#:tests? #f ; FIXME: 55% tests passed, 5 tests failed out of 11 + #:phases + (modify-phases %standard-phases + (add-before 'check 'pre-check + (lambda _ + ;; For the missing '/etc/machine-id'. + (setenv "DBUS_FATAL_WARNINGS" "0") + ;; Run the tests offscreen. + (setenv "QT_QPA_PLATFORM" "offscreen") + #t))))) + (home-page "https://community.kde.org/Solid/Projects/ScreenManagement") + (synopsis "KDE's screen management software") + (description "KScreen is the new screen management software for KDE Plasma +Workspaces which tries to be as magic and automatic as possible for users with +basic needs and easy to configure for those who want special setups.") + (license license:gpl2+))) + +(define-public libksysguard + (package + (name "libksysguard") + (version "5.13.4") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde//stable/plasma/" version + "/libksysguard-" version ".tar.xz")) + (sha256 + (base32 + "0k8q5bxk9zyv7c3nny1c399v8acqs618nw39q20pj2qdijl9ibvh")))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (inputs + `(("kconfigwidgets" ,kconfigwidgets) + ("kiconthemes" ,kiconthemes) + ("kwindowsystem" ,kwindowsystem) + ("ki18n" ,ki18n) + ("kauth" ,kauth) + ("kcompletion" ,kcompletion) + ("kconfig" ,kconfig) + ("kcoreaddons" ,kcoreaddons) + ("kwidgetsaddons" ,kwidgetsaddons) + ("kservice" ,kservice) + ("qtbase" ,qtbase) + ("qtscript" ,qtscript) + ("qtwebkit" ,qtwebkit) + ("qtx11extras" ,qtx11extras) + ("plasma" ,plasma-framework) + ("zlib" ,zlib))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + `(,(string-append "-DKDE_INSTALL_DATADIR=" + (assoc-ref %outputs "out") "/share")) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-cmakelists + (lambda _ + ;; TODO: Verify: This should no longer be necessary, since + ;; KF5AuthConfig.cmake.in contains this already. + (substitute* "processcore/CMakeLists.txt" + (("KAUTH_HELPER_INSTALL_DIR") "KDE_INSTALL_LIBEXECDIR")))) + (add-before 'check 'check-setup + (lambda _ + ;; make Qt render "offscreen", required for tests + (setenv "QT_QPA_PLATFORM" "offscreen"))) + (replace 'check + (lambda _ + ;; TODO: Fix this failing test-case + (invoke "ctest" "-E" "processtest")))))) + (home-page "https://www.kde.org/info/plasma-5.13.4.php") + (synopsis "Network enabled task and system monitoring") + (description "KSysGuard can obtain information on system load and +manage running processes. It obtains this information by interacting +with a ksysguardd daemon, which may also run on a remote system.") + (license license:gpl3+))) + diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm index 5946ba0b52..ff26b0ea83 100644 --- a/gnu/packages/kde.scm +++ b/gnu/packages/kde.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016, 2017 Efraim Flashner -;;; Copyright © 2016, 2017 Thomas Danckaert +;;; Copyright © 2017 Thomas Danckaert ;;; Copyright © 2017, 2018 Mark Meyer ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice ;;; Copyright © 2018 Gábor Boskovits @@ -36,11 +36,11 @@ #:use-module (gnu packages gettext) #:use-module (gnu packages ghostscript) #:use-module (gnu packages gl) - #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages graphics) #:use-module (gnu packages image) #:use-module (gnu packages kde-frameworks) + #:use-module (gnu packages kde-plasma) #:use-module (gnu packages llvm) #:use-module (gnu packages maths) #:use-module (gnu packages pdf) @@ -480,105 +480,6 @@ used in KDE development tools Kompare and KDevelop.") ;; source archive (license (list license:gpl2+ license:lgpl2.0+ license:bsd-3)))) -(define-public libkscreen - (package - (name "libkscreen") - (version "5.13.5") - (source - (origin - (method url-fetch) - (uri (string-append "mirror://kde/stable/plasma/" version "/" - name "-" version ".tar.xz")) - (sha256 - (base32 "04719va15i66qn1xqx318v6risxhp8bfcnhxh9mqm5h9qx5c6c4k")))) - (build-system cmake-build-system) - (native-inputs - `(("extra-cmake-modules" ,extra-cmake-modules) - ;; For testing. - ("dbus" ,dbus))) - (inputs - `(("kwayland" ,kwayland) - ("libxrandr" ,libxrandr) - ("qtbase" ,qtbase) - ("qtx11extras" ,qtx11extras))) - (arguments - '(#:tests? #f ; FIXME: 55% tests passed, 5 tests failed out of 11 - #:phases - (modify-phases %standard-phases - (add-before 'check 'pre-check - (lambda _ - ;; For the missing '/etc/machine-id'. - (setenv "DBUS_FATAL_WARNINGS" "0") - ;; Run the tests offscreen. - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) - (home-page "https://community.kde.org/Solid/Projects/ScreenManagement") - (synopsis "KDE's screen management software") - (description "KScreen is the new screen management software for KDE Plasma -Workspaces which tries to be as magic and automatic as possible for users with -basic needs and easy to configure for those who want special setups.") - (license license:gpl2+))) - -(define-public libksysguard - (package - (name "libksysguard") - (version "5.13.4") - (source - (origin - (method url-fetch) - (uri (string-append "mirror://kde//stable/plasma/" version - "/libksysguard-" version ".tar.xz")) - (sha256 - (base32 - "0k8q5bxk9zyv7c3nny1c399v8acqs618nw39q20pj2qdijl9ibvh")))) - (native-inputs - `(("extra-cmake-modules" ,extra-cmake-modules) - ("pkg-config" ,pkg-config))) - (inputs - `(("kconfigwidgets" ,kconfigwidgets) - ("kiconthemes" ,kiconthemes) - ("kwindowsystem" ,kwindowsystem) - ("ki18n" ,ki18n) - ("kauth" ,kauth) - ("kcompletion" ,kcompletion) - ("kconfig" ,kconfig) - ("kcoreaddons" ,kcoreaddons) - ("kwidgetsaddons" ,kwidgetsaddons) - ("kservice" ,kservice) - ("qtbase" ,qtbase) - ("qtscript" ,qtscript) - ("qtwebkit" ,qtwebkit) - ("qtx11extras" ,qtx11extras) - ("plasma" ,plasma-framework) - ("zlib" ,zlib))) - (build-system cmake-build-system) - (arguments - `(#:configure-flags - `(,(string-append "-DKDE_INSTALL_DATADIR=" - (assoc-ref %outputs "out") "/share")) - #:phases - (modify-phases %standard-phases - (add-before 'configure 'patch-cmakelists - (lambda _ - ;; TODO: Verify: This should no longer be necessary, since - ;; KF5AuthConfig.cmake.in contains this already. - (substitute* "processcore/CMakeLists.txt" - (("KAUTH_HELPER_INSTALL_DIR") "KDE_INSTALL_LIBEXECDIR")))) - (add-before 'check 'check-setup - (lambda _ - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen"))) - (replace 'check - (lambda _ - ;; TODO: Fix this failing test-case - (invoke "ctest" "-E" "processtest")))))) - (home-page "https://www.kde.org/info/plasma-5.13.4.php") - (synopsis "Network enabled task and system monitoring") - (description "KSysGuard can obtain information on system load and -manage running processes. It obtains this information by interacting -with a ksysguardd daemon, which may also run on a remote system.") - (license license:gpl3+))) - (define-public qca (package (name "qca")