guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

08/09: gnu: kpackage: Transfer patches from NixOS.


From: guix-commits
Subject: 08/09: gnu: kpackage: Transfer patches from NixOS.
Date: Fri, 4 Jan 2019 04:11:45 -0500 (EST)

htgoebel pushed a commit to branch master
in repository guix.

commit 0fd6138175cb6099e2e5f3d112c3188c84b31561
Author: Hartmut Goebel <address@hidden>
Date:   Mon Oct 23 12:55:22 2017 +0200

    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.
---
 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(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index 2fed38f..6d4159e 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -859,6 +859,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 2d48661..89d5287 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))
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 0000000..c1c9efd
--- /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)
+ {



reply via email to

[Prev in Thread] Current Thread [Next in Thread]