GNU bug report logs -
#33820
[PATCH 0/9] Adopt NixOS patches for KDE Frameworks
Previous Next
Full log
Message #26 received at 33820 <at> debbugs.gnu.org (full text, mbox):
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.
---
gnu/local.mk | 1 +
gnu/packages/kde-frameworks.scm | 15 ++++++++++++++-
gnu/packages/patches/kpackage-allow-external-paths.patch | 13 +++++++++++++
3 files changed, 28 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/kpackage-allow-external-paths.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index dd2a15b14..a7db95c20 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -858,6 +858,7 @@ dist_patch_DATA = \
%D%/packages/patches/kinit-kdeinit-libpath.patch \
%D%/packages/patches/kio-search-smbd-on-PATH.patch \
%D%/packages/patches/kmod-module-directory.patch \
+ %D%/packages/patches/kpackage-allow-external-paths.patch \
%D%/packages/patches/kobodeluxe-paths.patch \
%D%/packages/patches/kobodeluxe-enemies-pipe-decl.patch \
%D%/packages/patches/kobodeluxe-const-charp-conversion.patch \
diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index c269c4758..65233f72e 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -1848,7 +1848,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)))
@@ -1863,6 +1866,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))
diff --git a/gnu/packages/patches/kpackage-allow-external-paths.patch b/gnu/packages/patches/kpackage-allow-external-paths.patch
new file mode 100644
index 000000000..c1c9efde7
--- /dev/null
+++ b/gnu/packages/patches/kpackage-allow-external-paths.patch
@@ -0,0 +1,13 @@
+diff --git a/src/kpackage/package.cpp b/src/kpackage/package.cpp
+index 5aec9fd..b15c933 100644
+--- a/src/kpackage/package.cpp
++++ b/src/kpackage/package.cpp
+@@ -820,7 +820,7 @@ PackagePrivate::PackagePrivate()
+ : QSharedData(),
+ fallbackPackage(nullptr),
+ metadata(nullptr),
+- externalPaths(false),
++ externalPaths(true),
+ valid(false),
+ checkedValid(false)
+ {
--
2.13.7
This bug report was last modified 6 years and 137 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.