summaryrefslogtreecommitdiff
path: root/gnu/packages/kde-frameworks.scm
diff options
context:
space:
mode:
authorHartmut Goebel <h.goebel@crazy-compilers.com>2017-10-23 12:55:22 +0200
committerHartmut Goebel <h.goebel@crazy-compilers.com>2019-01-04 10:10:46 +0100
commit0fd6138175cb6099e2e5f3d112c3188c84b31561 (patch)
tree46504cad18c7eb5bbf4b66efa16ed3426fb08415 /gnu/packages/kde-frameworks.scm
parent16b8aff85bcdb9799496c4a27257210cd45158e5 (diff)
downloadgnu-guix-0fd6138175cb6099e2e5f3d112c3188c84b31561.tar
gnu-guix-0fd6138175cb6099e2e5f3d112c3188c84b31561.tar.gz
gnu: kpackage: Transfer patches from NixOS.
Transfer the NixOS patches for kpackage as of 2018-02-17: - Allow external paths. - Make QDirIterator follow symlinks. Decided to use a patch for one of the "allow external paths" changes since 'substitute*' seems not to be robust enough. * gnu/packages/patches/kpackage-allow-external-paths.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/kde-frameworks.scm(kpackage)[source]: Use it. <patch>: New phase.
Diffstat (limited to 'gnu/packages/kde-frameworks.scm')
-rw-r--r--gnu/packages/kde-frameworks.scm15
1 files changed, 14 insertions, 1 deletions
diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 2d48661a44..89d52874b8 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -1825,7 +1825,10 @@ covers feedback and persistent events.")
name "-" version ".tar.xz"))
(sha256
(base32
- "1xbfjwxb4gff8gg0hs5m9s0jcnzqk27rs2jr71g5ckhvs5psnkcd"))))
+ "1xbfjwxb4gff8gg0hs5m9s0jcnzqk27rs2jr71g5ckhvs5psnkcd"))
+ ;; Default to: external paths/symlinks can be followed by a
+ ;; package
+ (patches (search-patches "kpackage-allow-external-paths.patch"))))
(build-system cmake-build-system)
(native-inputs
`(("extra-cmake-modules" ,extra-cmake-modules)))
@@ -1840,6 +1843,16 @@ covers feedback and persistent events.")
`(#:tests? #f ; FIXME: 3/9 tests fail.
#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'patch
+ (lambda _
+ ;; Make QDirIterator follow symlinks
+ (substitute* '("src/kpackage/packageloader.cpp"
+ "src/kpackage/private/packagejobthread.cpp")
+ (("^\\s*(const QDirIterator::IteratorFlags flags = QDirIterator::Subdirectories)(;)" _ a b)
+ (string-append a " | QDirIterator::FollowSymlinks" b))
+ (("^\\s*(QDirIterator it\\(.*, QDirIterator::Subdirectories)(\\);)" _ a b)
+ (string-append a " | QDirIterator::FollowSymlinks" b)))
+ #t))
(add-before 'check 'check-setup
(lambda _
(setenv "HOME" (getcwd))