From ead0b8fac64c1426c85c4fc6af43422bebebcbff Mon Sep 17 00:00:00 2001 From: Zheng Junjie Date: Mon, 8 Jul 2024 13:46:24 +0800 Subject: gnu: Add kservice-5. * gnu/packages/kde-frameworks.scm (kservice-5): New variable. Change-Id: I076f60ef2f9e68dc3fe30d78c737ad9f8859554c --- gnu/packages/kde-frameworks.scm | 44 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) (limited to 'gnu/packages/kde-frameworks.scm') diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm index be3454697f..7f77370883 100644 --- a/gnu/packages/kde-frameworks.scm +++ b/gnu/packages/kde-frameworks.scm @@ -3739,6 +3739,50 @@ types or handled by application specific code.") ;; triple licensed (license (list license:gpl2+ license:gpl3+ license:lgpl2.1+)))) +(define-public kservice-5 + (package + (inherit kservice) + (name "kservice") + (version "5.116.0") + (source (origin + (method url-fetch) + (uri (string-append + "mirror://kde/stable/frameworks/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "0sd8yj9a1ja97c515g9shjqyzdz0jd7rn3r06g5659nh2z1w5dsj")))) + (propagated-inputs + (list kconfig-5 kcoreaddons-5 kdoctools-5)) + (native-inputs + (list bison extra-cmake-modules flex shared-mime-info)) + (inputs + (list kcrash-5 kdbusaddons-5 kdoctools-5 ki18n-5 qtbase-5)) + (arguments + (list #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch + ;; Adopted from NixOS' patches "qdiriterator-follow-symlinks" and + ;; "no-canonicalize-path". + (lambda _ + (substitute* "src/sycoca/kbuildsycoca.cpp" + ;; make QDirIterator follow symlinks + (("^\\s*(QDirIterator it\\(.*, QDirIterator::Subdirectories)(\\);)" _ a b) + (string-append a " | QDirIterator::FollowSymlinks" b))) + (substitute* "src/sycoca/vfolder_menu.cpp" + ;; Normalize path, but don't resolve symlinks (taken from + ;; NixOS) + (("^\\s*QString resolved = QDir\\(dir\\)\\.canonicalPath\\(\\);") + "QString resolved = QDir::cleanPath(dir);")))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (setenv "HOME" (getcwd)) + (setenv "QT_QPA_PLATFORM" "offscreen") + ;; Disable failing tests. + (invoke "ctest" "-E" "(kautostarttest|ksycocatest|kapplicationtradertest)"))))))))) + (define-public kstatusnotifieritem (package (name "kstatusnotifieritem") -- cgit v1.2.3