summary refs log tree commit diff
path: root/pkgs/development/libraries/kde-frameworks/kservice
diff options
context:
space:
mode:
authorThomas Tuegel <ttuegel@gmail.com>2016-07-28 18:27:13 -0500
committerThomas Tuegel <ttuegel@gmail.com>2016-07-28 18:27:13 -0500
commit4856a2a1eaf41e55312a17cb7b8cce64e448bb23 (patch)
treea84430bf3a15a6f0be4361f9913541bd889b5ec1 /pkgs/development/libraries/kde-frameworks/kservice
parentadd332c4249564674ee8a744c238e7c13722c240 (diff)
downloadnixpkgs-4856a2a1eaf41e55312a17cb7b8cce64e448bb23.tar
nixpkgs-4856a2a1eaf41e55312a17cb7b8cce64e448bb23.tar.gz
nixpkgs-4856a2a1eaf41e55312a17cb7b8cce64e448bb23.tar.bz2
nixpkgs-4856a2a1eaf41e55312a17cb7b8cce64e448bb23.tar.lz
nixpkgs-4856a2a1eaf41e55312a17cb7b8cce64e448bb23.tar.xz
nixpkgs-4856a2a1eaf41e55312a17cb7b8cce64e448bb23.tar.zst
nixpkgs-4856a2a1eaf41e55312a17cb7b8cce64e448bb23.zip
build KDE Frameworks with each Qt version
Diffstat (limited to 'pkgs/development/libraries/kde-frameworks/kservice')
-rw-r--r--pkgs/development/libraries/kde-frameworks/kservice/default.nix12
-rw-r--r--pkgs/development/libraries/kde-frameworks/kservice/no-canonicalize-path.patch13
-rw-r--r--pkgs/development/libraries/kde-frameworks/kservice/qdiriterator-follow-symlinks.patch13
-rw-r--r--pkgs/development/libraries/kde-frameworks/kservice/series2
4 files changed, 40 insertions, 0 deletions
diff --git a/pkgs/development/libraries/kde-frameworks/kservice/default.nix b/pkgs/development/libraries/kde-frameworks/kservice/default.nix
new file mode 100644
index 00000000000..484be408794
--- /dev/null
+++ b/pkgs/development/libraries/kde-frameworks/kservice/default.nix
@@ -0,0 +1,12 @@
+{ kdeFramework, lib, copyPathsToStore, extra-cmake-modules, kconfig, kcoreaddons
+, kcrash, kdbusaddons, kdoctools, ki18n, kwindowsystem
+}:
+
+kdeFramework {
+  name = "kservice";
+  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
+  propagatedNativeBuildInputs = [ extra-cmake-modules ];
+  nativeBuildInputs = [ kdoctools ];
+  propagatedBuildInputs = [ kconfig kcoreaddons kcrash kdbusaddons ki18n kwindowsystem ];
+  patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
+}
diff --git a/pkgs/development/libraries/kde-frameworks/kservice/no-canonicalize-path.patch b/pkgs/development/libraries/kde-frameworks/kservice/no-canonicalize-path.patch
new file mode 100644
index 00000000000..cf98ffb9067
--- /dev/null
+++ b/pkgs/development/libraries/kde-frameworks/kservice/no-canonicalize-path.patch
@@ -0,0 +1,13 @@
+Index: kservice-5.21.0/src/sycoca/vfolder_menu.cpp
+===================================================================
+--- kservice-5.21.0.orig/src/sycoca/vfolder_menu.cpp
++++ kservice-5.21.0/src/sycoca/vfolder_menu.cpp
+@@ -415,7 +415,7 @@ VFolderMenu::absoluteDir(const QString &
+     }
+ 
+     if (!relative) {
+-        QString resolved = QDir(dir).canonicalPath();
++      QString resolved = QDir::cleanPath(dir);
+         if (!resolved.isEmpty()) {
+             dir = resolved;
+         }
diff --git a/pkgs/development/libraries/kde-frameworks/kservice/qdiriterator-follow-symlinks.patch b/pkgs/development/libraries/kde-frameworks/kservice/qdiriterator-follow-symlinks.patch
new file mode 100644
index 00000000000..cbe13b70950
--- /dev/null
+++ b/pkgs/development/libraries/kde-frameworks/kservice/qdiriterator-follow-symlinks.patch
@@ -0,0 +1,13 @@
+Index: kservice-5.21.0/src/sycoca/kbuildsycoca.cpp
+===================================================================
+--- kservice-5.21.0.orig/src/sycoca/kbuildsycoca.cpp
++++ kservice-5.21.0/src/sycoca/kbuildsycoca.cpp
+@@ -203,7 +203,7 @@ bool KBuildSycoca::build()
+         QSet<QString> relFiles;
+         const QStringList dirs = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, m_resourceSubdir, QStandardPaths::LocateDirectory);
+         Q_FOREACH (const QString &dir, dirs) {
+-            QDirIterator it(dir, QDirIterator::Subdirectories);
++            QDirIterator it(dir, QDirIterator::Subdirectories | QDirIterator::FollowSymlinks);
+             while (it.hasNext()) {
+                 const QString filePath = it.next();
+                 Q_ASSERT(filePath.startsWith(dir)); // due to the line below...
diff --git a/pkgs/development/libraries/kde-frameworks/kservice/series b/pkgs/development/libraries/kde-frameworks/kservice/series
new file mode 100644
index 00000000000..3ce22dbd35a
--- /dev/null
+++ b/pkgs/development/libraries/kde-frameworks/kservice/series
@@ -0,0 +1,2 @@
+qdiriterator-follow-symlinks.patch
+no-canonicalize-path.patch
\ No newline at end of file