kde5_latest.frameworks: 5.19 -> 5.21

This commit is contained in:
Thomas Tuegel 2016-04-21 10:32:21 -05:00
parent 26f90102b8
commit eb604134f7
106 changed files with 2465 additions and 1 deletions

View File

@ -0,0 +1,11 @@
{ kdeFramework, lib
, extra-cmake-modules
}:
kdeFramework {
name = "attica";
nativeBuildInputs = [ extra-cmake-modules ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,25 @@
{ kdeFramework, lib, extra-cmake-modules, kauth, kconfig
, kcoreaddons, kcrash, kdbusaddons, kfilemetadata, ki18n, kidletime
, kio, lmdb, makeQtWrapper, qtbase, qtquick1, solid
}:
kdeFramework {
name = "baloo";
nativeBuildInputs = [ extra-cmake-modules makeQtWrapper ];
buildInputs = [
kconfig kcrash kdbusaddons lmdb qtquick1 solid
];
propagatedBuildInputs = [
kauth kcoreaddons kfilemetadata ki18n kio kidletime qtbase
];
postInstall = ''
wrapQtProgram "$out/bin/baloo_file"
wrapQtProgram "$out/bin/baloo_file_extractor"
wrapQtProgram "$out/bin/balooctl"
wrapQtProgram "$out/bin/baloosearch"
wrapQtProgram "$out/bin/balooshow"
'';
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,17 @@
{ kdeFramework, lib
, extra-cmake-modules
, qtdeclarative
}:
kdeFramework {
name = "bluez-qt";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ qtdeclarative ];
preConfigure = ''
substituteInPlace CMakeLists.txt \
--replace /lib/udev/rules.d "$out/lib/udev/rules.d"
'';
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,10 @@
{ kdeFramework
, extra-cmake-modules
, qtsvg
}:
kdeFramework {
name = "breeze-icons";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ qtsvg ];
}

View File

@ -0,0 +1,121 @@
# Maintainer's Notes:
#
# Minor updates:
# 1. Edit ./fetchsrcs.sh to point to the updated URL.
# 2. Run ./fetchsrcs.sh.
# 3. Build and enjoy.
#
# Major updates:
# We prefer not to immediately overwrite older versions with major updates, so
# make a copy of this directory first. After copying, be sure to delete ./tmp
# if it exists. Then follow the minor update instructions. Be sure to check if
# any new components have been added and package them as necessary.
{ pkgs, debug ? false }:
let
inherit (pkgs) lib makeSetupHook stdenv;
mirror = "mirror://kde";
srcs = import ./srcs.nix { inherit (pkgs) fetchurl; inherit mirror; };
packages = self: with self; {
kdeFramework = args:
let
inherit (args) name;
inherit (srcs."${name}") src version;
in stdenv.mkDerivation (args // {
name = "${name}-${version}";
inherit src;
outputs = args.outputs or [ "dev" "out" ];
cmakeFlags =
(args.cmakeFlags or [])
++ [ "-DBUILD_TESTING=OFF" ]
++ lib.optional debug "-DCMAKE_BUILD_TYPE=Debug";
meta = {
license = with lib.licenses; [
lgpl21Plus lgpl3Plus bsd2 mit gpl2Plus gpl3Plus fdl12
];
platforms = lib.platforms.linux;
homepage = "http://www.kde.org";
} // (args.meta or {});
});
attica = callPackage ./attica.nix {};
baloo = callPackage ./baloo.nix {};
bluez-qt = callPackage ./bluez-qt.nix {};
breeze-icons = callPackage ./breeze-icons.nix {};
extra-cmake-modules = callPackage ./extra-cmake-modules {};
frameworkintegration = callPackage ./frameworkintegration.nix {};
kactivities = callPackage ./kactivities.nix {};
kactivities-stats = callPackage ./kactivities-stats.nix {};
kapidox = callPackage ./kapidox.nix {};
karchive = callPackage ./karchive.nix {};
kauth = callPackage ./kauth {};
kbookmarks = callPackage ./kbookmarks.nix {};
kcmutils = callPackage ./kcmutils {};
kcodecs = callPackage ./kcodecs.nix {};
kcompletion = callPackage ./kcompletion.nix {};
kconfig = callPackage ./kconfig.nix {};
kconfigwidgets = callPackage ./kconfigwidgets {};
kcoreaddons = callPackage ./kcoreaddons.nix {};
kcrash = callPackage ./kcrash.nix {};
kdbusaddons = callPackage ./kdbusaddons.nix {};
kdeclarative = callPackage ./kdeclarative.nix {};
kded = callPackage ./kded.nix {};
kdelibs4support = callPackage ./kdelibs4support {};
kdesignerplugin = callPackage ./kdesignerplugin.nix {};
kdesu = callPackage ./kdesu.nix {};
kdewebkit = callPackage ./kdewebkit.nix {};
kdnssd = callPackage ./kdnssd.nix {};
kdoctools = callPackage ./kdoctools {};
kemoticons = callPackage ./kemoticons.nix {};
kfilemetadata = callPackage ./kfilemetadata {};
kglobalaccel = callPackage ./kglobalaccel.nix {};
kguiaddons = callPackage ./kguiaddons.nix {};
khtml = callPackage ./khtml.nix {};
ki18n = callPackage ./ki18n.nix {};
kiconthemes = callPackage ./kiconthemes {};
kidletime = callPackage ./kidletime.nix {};
kimageformats = callPackage ./kimageformats.nix {};
kinit = callPackage ./kinit {};
kio = callPackage ./kio {};
kitemmodels = callPackage ./kitemmodels.nix {};
kitemviews = callPackage ./kitemviews.nix {};
kjobwidgets = callPackage ./kjobwidgets.nix {};
kjs = callPackage ./kjs.nix {};
kjsembed = callPackage ./kjsembed.nix {};
kmediaplayer = callPackage ./kmediaplayer.nix {};
knewstuff = callPackage ./knewstuff.nix {};
knotifications = callPackage ./knotifications.nix {};
knotifyconfig = callPackage ./knotifyconfig.nix {};
kpackage = callPackage ./kpackage {};
kparts = callPackage ./kparts.nix {};
kpeople = callPackage ./kpeople.nix {};
kplotting = callPackage ./kplotting.nix {};
kpty = callPackage ./kpty.nix {};
kross = callPackage ./kross.nix {};
krunner = callPackage ./krunner.nix {};
kservice = callPackage ./kservice {};
ktexteditor = callPackage ./ktexteditor {};
ktextwidgets = callPackage ./ktextwidgets.nix {};
kunitconversion = callPackage ./kunitconversion.nix {};
kwallet = callPackage ./kwallet.nix {};
kwidgetsaddons = callPackage ./kwidgetsaddons.nix {};
kwindowsystem = callPackage ./kwindowsystem.nix {};
kxmlgui = callPackage ./kxmlgui.nix {};
kxmlrpcclient = callPackage ./kxmlrpcclient.nix {};
modemmanager-qt = callPackage ./modemmanager-qt.nix {};
networkmanager-qt = callPackage ./networkmanager-qt.nix {};
oxygen-icons5 = callPackage ./oxygen-icons5.nix {};
plasma-framework = callPackage ./plasma-framework {};
solid = callPackage ./solid.nix {};
sonnet = callPackage ./sonnet.nix {};
threadweaver = callPackage ./threadweaver.nix {};
};
in packages

View File

@ -0,0 +1,20 @@
{ kdeFramework, lib, copyPathsToStore, cmake, pkgconfig, qttools }:
kdeFramework {
name = "extra-cmake-modules";
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
outputs = [ "out" ]; # this package has no runtime components
setupHook = ./setup-hook.sh;
# It is OK to propagate these inputs as long as
# extra-cmake-modules is never a propagated input
# of some other derivation.
propagatedNativeBuildInputs = [ cmake pkgconfig qttools ];
meta = with lib; {
license = licenses.bsd2;
maintainers = [ maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,37 @@
Index: extra-cmake-modules-5.18.0/kde-modules/KDEInstallDirs.cmake
===================================================================
--- extra-cmake-modules-5.18.0.orig/kde-modules/KDEInstallDirs.cmake
+++ extra-cmake-modules-5.18.0/kde-modules/KDEInstallDirs.cmake
@@ -200,32 +200,6 @@
# GNUInstallDirs code deals with re-configuring, but that is dealt with
# by the _define_* macros in this module).
set(_LIBDIR_DEFAULT "lib")
-# Override this default 'lib' with 'lib64' iff:
-# - we are on a Linux, kFreeBSD or Hurd system but NOT cross-compiling
-# - we are NOT on debian
-# - we are on a 64 bits system
-# reason is: amd64 ABI: http://www.x86-64.org/documentation/abi.pdf
-# For Debian with multiarch, use 'lib/${CMAKE_LIBRARY_ARCHITECTURE}' if
-# CMAKE_LIBRARY_ARCHITECTURE is set (which contains e.g. "i386-linux-gnu"
-# See http://wiki.debian.org/Multiarch
-if((CMAKE_SYSTEM_NAME MATCHES "Linux|kFreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "GNU")
- AND NOT CMAKE_CROSSCOMPILING)
- if (EXISTS "/etc/debian_version") # is this a debian system ?
- if(CMAKE_LIBRARY_ARCHITECTURE)
- set(_LIBDIR_DEFAULT "lib/${CMAKE_LIBRARY_ARCHITECTURE}")
- endif()
- else() # not debian, rely on CMAKE_SIZEOF_VOID_P:
- if(NOT DEFINED CMAKE_SIZEOF_VOID_P)
- message(AUTHOR_WARNING
- "Unable to determine default LIB_INSTALL_LIBDIR directory because no target architecture is known. "
- "Please enable at least one language before including KDEInstallDirs.")
- else()
- if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
- set(_LIBDIR_DEFAULT "lib64")
- endif()
- endif()
- endif()
-endif()
set(_gnu_install_dirs_vars
BINDIR

View File

@ -0,0 +1 @@
nix-lib-path.patch

View File

@ -0,0 +1,80 @@
_ecmSetXdgDirs() {
addToSearchPathOnce XDG_DATA_DIRS "$1/share"
addToSearchPathOnce XDG_CONFIG_DIRS "$1/etc/xdg"
addToSearchPathOnce NIX_WRAP_XDG_CONFIG_DIRS "$1/etc/xdg"
}
_ecmPropagateSharedData() {
local sharedPaths=( \
"config.cfg" \
"kconf_update" \
"kservices5" \
"kservicetypes5" \
"kxmlgui5" \
"knotifications5" \
"icons" \
"sounds" \
"templates" \
"wallpapers" \
"applications" \
"desktop-directories" \
"mime" \
"dbus-1" \
"interfaces" \
"services" \
"system-services" )
for dir in ${sharedPaths[@]}; do
if [ -d "$1/share/$dir" ]; then
addToSearchPathOnce NIX_WRAP_XDG_DATA_DIRS "$1/share"
propagateOnce propagatedBuildInputs "$1"
propagateOnce propagatedUserEnvPkgs "$1"
break
fi
done
}
_ecmConfig() {
# Because we need to use absolute paths here, we must set *all* the paths.
cmakeFlags+=" -DKDE_INSTALL_EXECROOTDIR=${!outputBin}"
cmakeFlags+=" -DKDE_INSTALL_BINDIR=${!outputBin}/bin"
cmakeFlags+=" -DKDE_INSTALL_SBINDIR=${!outputBin}/sbin"
cmakeFlags+=" -DKDE_INSTALL_LIBDIR=${!outputLib}/lib"
cmakeFlags+=" -DKDE_INSTALL_LIBEXECDIR=${!outputLib}/lib/libexec"
cmakeFlags+=" -DKDE_INSTALL_CMAKEPACKAGEDIR=${!outputDev}/lib/cmake"
cmakeFlags+=" -DKDE_INSTALL_QTPLUGINDIR=${!outputLib}/lib/qt5/plugins"
cmakeFlags+=" -DKDE_INSTALL_PLUGINDIR=${!outputLib}/lib/qt5/plugins"
cmakeFlags+=" -DKDE_INSTALL_QTQUICKIMPORTSDIR=${!outputLib}/lib/qt5/imports"
cmakeFlags+=" -DKDE_INSTALL_QMLDIR=${!outputLib}/lib/qt5/qml"
cmakeFlags+=" -DKDE_INSTALL_INCLUDEDIR=${!outputInclude}/include"
cmakeFlags+=" -DKDE_INSTALL_LOCALSTATEDIR=/var"
cmakeFlags+=" -DKDE_INSTALL_DATAROOTDIR=${!outputLib}/share"
cmakeFlags+=" -DKDE_INSTALL_DATADIR=${!outputLib}/share"
cmakeFlags+=" -DKDE_INSTALL_DOCBUNDLEDIR=${!outputLib}/share/doc/HTML"
cmakeFlags+=" -DKDE_INSTALL_KCFGDIR=${!outputLib}/share/config.kcfg"
cmakeFlags+=" -DKDE_INSTALL_KCONFUPDATEDIR=${!outputLib}/share/kconf_update"
cmakeFlags+=" -DKDE_INSTALL_KSERVICES5DIR=${!outputLib}/share/kservices5"
cmakeFlags+=" -DKDE_INSTALL_KSERVICETYPES5DIR=${!outputLib}/share/kservicetypes5"
cmakeFlags+=" -DKDE_INSTALL_KXMLGUI5DIR=${!outputLib}/share/kxmlgui5"
cmakeFlags+=" -DKDE_INSTALL_KNOTIFY5RCDIR=${!outputLib}/share/knotifications5"
cmakeFlags+=" -DKDE_INSTALL_ICONDIR=${!outputLib}/share/icons"
cmakeFlags+=" -DKDE_INSTALL_LOCALEDIR=${!outputLib}/share/locale"
cmakeFlags+=" -DKDE_INSTALL_SOUNDDIR=${!outputLib}/share/sounds"
cmakeFlags+=" -DKDE_INSTALL_TEMPLATEDIR=${!outputLib}/share/templates"
cmakeFlags+=" -DKDE_INSTALL_WALLPAPERDIR=${!outputLib}/share/wallpapers"
cmakeFlags+=" -DKDE_INSTALL_APPDIR=${!outputLib}/share/applications"
cmakeFlags+=" -DKDE_INSTALL_DESKTOPDIR=${!outputLib}/share/desktop-directories"
cmakeFlags+=" -DKDE_INSTALL_MIMEDIR=${!outputLib}/share/mime/packages"
cmakeFlags+=" -DKDE_INSTALL_METAINFODIR=${!outputLib}/share/appdata"
cmakeFlags+=" -DKDE_INSTALL_MANDIR=${!outputLib}/share/man"
cmakeFlags+=" -DKDE_INSTALL_INFODIR=${!outputLib}/share/info"
cmakeFlags+=" -DKDE_INSTALL_DBUSDIR=${!outputLib}/share/dbus-1"
cmakeFlags+=" -DKDE_INSTALL_DBUSINTERFACEDIR=${!outputLib}/share/dbus-1/interfaces"
cmakeFlags+=" -DKDE_INSTALL_DBUSSERVICEDIR=${!outputLib}/share/dbus-1/services"
cmakeFlags+=" -DKDE_INSTALL_DBUSSYSTEMSERVICEDIR=${!outputLib}/share/dbus-1/system-services"
cmakeFlags+=" -DKDE_INSTALL_SYSCONFDIR=${!outputLib}/etc"
cmakeFlags+=" -DKDE_INSTALL_CONFDIR=${!outputLib}/etc/xdg"
cmakeFlags+=" -DKDE_INSTALL_AUTOSTARTDIR=${!outputLib}/etc/xdg/autostart"
}
envHooks+=(_ecmSetXdgDirs _ecmPropagateSharedData)
preConfigureHooks+=(_ecmConfig)

View File

@ -0,0 +1,57 @@
#! /usr/bin/env nix-shell
#! nix-shell -i bash -p coreutils findutils gnused nix wget
set -x
# The trailing slash at the end is necessary!
RELEASE_URL="http://download.kde.org/stable/frameworks/5.21/"
EXTRA_WGET_ARGS='-A *.tar.xz'
mkdir tmp; cd tmp
rm -f ../srcs.csv
wget -nH -r -c --no-parent $RELEASE_URL $EXTRA_WGET_ARGS
find . | while read src; do
if [[ -f "${src}" ]]; then
# Sanitize file name
filename=$(basename "$src" | tr '@' '_')
nameVersion="${filename%.tar.*}"
name=$(echo "$nameVersion" | sed -e 's,-[[:digit:]].*,,' | sed -e 's,-opensource-src$,,')
version=$(echo "$nameVersion" | sed -e 's,^\([[:alpha:]][[:alnum:]]*-\)\+,,')
echo "$name,$version,$src,$filename" >>../srcs.csv
fi
done
cat >../srcs.nix <<EOF
# DO NOT EDIT! This file is generated automatically by fetchsrcs.sh
{ fetchurl, mirror }:
{
EOF
gawk -F , "{ print \$1 }" ../srcs.csv | sort | uniq | while read name; do
versions=$(gawk -F , "/^$name,/ { print \$2 }" ../srcs.csv)
latestVersion=$(echo "$versions" | sort -rV | head -n 1)
src=$(gawk -F , "/^$name,$latestVersion,/ { print \$3 }" ../srcs.csv)
filename=$(gawk -F , "/^$name,$latestVersion,/ { print \$4 }" ../srcs.csv)
url="${src:2}"
sha256=$(nix-hash --type sha256 --base32 --flat "$src")
cat >>../srcs.nix <<EOF
$name = {
version = "$latestVersion";
src = fetchurl {
url = "\${mirror}/$url";
sha256 = "$sha256";
name = "$filename";
};
};
EOF
done
echo "}" >>../srcs.nix
rm -f ../srcs.csv
cd ..

View File

@ -0,0 +1,17 @@
{ kdeFramework, lib, extra-cmake-modules, kbookmarks, kcompletion
, kconfig, kconfigwidgets, ki18n, kiconthemes, kio, knotifications
, kwidgetsaddons, libXcursor, qtx11extras
}:
kdeFramework {
name = "frameworkintegration";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [
kbookmarks kcompletion kconfig knotifications kwidgetsaddons
libXcursor
];
propagatedBuildInputs = [ kconfigwidgets ki18n kio kiconthemes qtx11extras ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,9 @@
{ kdeFramework, lib, extra-cmake-modules
, boost, kactivities, kconfig }:
kdeFramework {
name = "kactivities-stats";
meta = { maintainers = [ lib.maintainers.ttuegel ]; };
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ boost kactivities kconfig ];
}

View File

@ -0,0 +1,19 @@
{ kdeFramework, lib, extra-cmake-modules, boost, kcmutils, kconfig
, kcoreaddons, kdbusaddons, kdeclarative, kglobalaccel, ki18n
, kio, kservice, kwindowsystem, kxmlgui, qtdeclarative
}:
kdeFramework {
name = "kactivities";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [
boost kcmutils kconfig kcoreaddons kdbusaddons kservice
kxmlgui
];
propagatedBuildInputs = [
kdeclarative kglobalaccel ki18n kio kwindowsystem qtdeclarative
];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,12 @@
{ kdeFramework, lib
, extra-cmake-modules
, python
}:
kdeFramework {
name = "kapidox";
nativeBuildInputs = [ extra-cmake-modules python ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,11 @@
{ kdeFramework, lib
, extra-cmake-modules
}:
kdeFramework {
name = "karchive";
nativeBuildInputs = [ extra-cmake-modules ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,17 @@
Index: kauth-5.18.0/KF5AuthConfig.cmake.in
===================================================================
--- kauth-5.18.0.orig/KF5AuthConfig.cmake.in
+++ kauth-5.18.0/KF5AuthConfig.cmake.in
@@ -4,9 +4,9 @@ set(KAUTH_STUB_FILES_DIR "@PACKAGE_KDE_I
set(KAUTH_BACKEND_NAME "@KAUTH_BACKEND_NAME@")
set(KAUTH_HELPER_BACKEND_NAME "@KAUTH_HELPER_BACKEND_NAME@")
-set(KAUTH_POLICY_FILES_INSTALL_DIR "@KAUTH_POLICY_FILES_INSTALL_DIR@")
-set(KAUTH_HELPER_INSTALL_DIR "@KAUTH_HELPER_INSTALL_DIR@")
-set(KAUTH_HELPER_INSTALL_ABSOLUTE_DIR "@KAUTH_HELPER_INSTALL_ABSOLUTE_DIR@")
+set(KAUTH_POLICY_FILES_INSTALL_DIR "${KDE_INSTALL_DATADIR}/polkit-1/actions")
+set(KAUTH_HELPER_INSTALL_DIR "${KDE_INSTALL_LIBEXECDIR}")
+set(KAUTH_HELPER_INSTALL_ABSOLUTE_DIR "${KDE_INSTALL_LIBEXECDIR}")
find_dependency(KF5CoreAddons "@KF5_DEP_VERSION@")

View File

@ -0,0 +1,16 @@
{ kdeFramework, lib, copyPathsToStore
, extra-cmake-modules
, kcoreaddons
, polkit-qt
}:
kdeFramework {
name = "kauth";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ polkit-qt ];
propagatedBuildInputs = [ kcoreaddons ];
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,13 @@
diff --git a/KF5AuthConfig.cmake.in b/KF5AuthConfig.cmake.in
index e859ec7..9a8ab18 100644
--- a/KF5AuthConfig.cmake.in
+++ b/KF5AuthConfig.cmake.in
@@ -4,7 +4,7 @@ set(KAUTH_STUB_FILES_DIR "${PACKAGE_PREFIX_DIR}/@KF5_DATA_INSTALL_DIR@/kauth/")
set(KAUTH_BACKEND_NAME "@KAUTH_BACKEND_NAME@")
set(KAUTH_HELPER_BACKEND_NAME "@KAUTH_HELPER_BACKEND_NAME@")
-set(KAUTH_POLICY_FILES_INSTALL_DIR "@KAUTH_POLICY_FILES_INSTALL_DIR@")
+set(KAUTH_POLICY_FILES_INSTALL_DIR "\${CMAKE_INSTALL_PREFIX}/share/polkit-1/actions")
set(KAUTH_HELPER_INSTALL_DIR "@KAUTH_HELPER_INSTALL_DIR@")
find_dependency(KF5CoreAddons "@KF5_DEP_VERSION@")

View File

@ -0,0 +1 @@
cmake-install-paths.patch

View File

@ -0,0 +1,25 @@
{ kdeFramework, lib
, extra-cmake-modules
, kcodecs
, kconfig
, kconfigwidgets
, kcoreaddons
, kiconthemes
, kxmlgui
}:
kdeFramework {
name = "kbookmarks";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [
kcodecs
kconfig
kconfigwidgets
kcoreaddons
kiconthemes
kxmlgui
];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,25 @@
From f14d2a275323a47104b33eb61c5b6910ae1a9f59 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Wed, 14 Oct 2015 06:43:53 -0500
Subject: [PATCH] qdiriterator follow symlinks
---
src/kpluginselector.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/kpluginselector.cpp b/src/kpluginselector.cpp
index 9c3431d..d6b1ee2 100644
--- a/src/kpluginselector.cpp
+++ b/src/kpluginselector.cpp
@@ -305,7 +305,7 @@ void KPluginSelector::addPlugins(const QString &componentName,
QStringList desktopFileNames;
const QStringList dirs = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, componentName + QStringLiteral("/kpartplugins"), QStandardPaths::LocateDirectory);
Q_FOREACH (const QString &dir, dirs) {
- QDirIterator it(dir, QStringList() << QStringLiteral("*.desktop"), QDir::NoFilter, QDirIterator::Subdirectories);
+ QDirIterator it(dir, QStringList() << QStringLiteral("*.desktop"), QDir::NoFilter, QDirIterator::Subdirectories | QDirIterator::FollowSymlinks);
while (it.hasNext()) {
desktopFileNames.append(it.next());
}
--
2.5.2

View File

@ -0,0 +1,17 @@
{ kdeFramework, lib, extra-cmake-modules, kconfigwidgets
, kcoreaddons, kdeclarative, ki18n, kiconthemes, kitemviews
, kpackage, kservice, kxmlgui
}:
kdeFramework {
name = "kcmutils";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [
kcoreaddons kiconthemes kitemviews kpackage kxmlgui
];
propagatedBuildInputs = [ kconfigwidgets kdeclarative ki18n kservice ];
patches = [ ./0001-qdiriterator-follow-symlinks.patch ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,11 @@
{ kdeFramework, lib
, extra-cmake-modules
}:
kdeFramework {
name = "kcodecs";
nativeBuildInputs = [ extra-cmake-modules ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,14 @@
{ kdeFramework, lib
, extra-cmake-modules
, kconfig
, kwidgetsaddons
}:
kdeFramework {
name = "kcompletion";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ kconfig kwidgetsaddons ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,16 @@
{ kdeFramework, lib
, extra-cmake-modules
, makeQtWrapper
}:
kdeFramework {
name = "kconfig";
nativeBuildInputs = [ extra-cmake-modules makeQtWrapper ];
postInstall = ''
wrapQtProgram "$out/bin/kreadconfig5"
wrapQtProgram "$out/bin/kwriteconfig5"
'';
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,25 @@
From 4f84780893d505b2d62a14633dd983baa8ec6e28 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Wed, 14 Oct 2015 06:47:01 -0500
Subject: [PATCH] qdiriterator follow symlinks
---
src/khelpclient.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/khelpclient.cpp b/src/khelpclient.cpp
index 53a331e..80fbb01 100644
--- a/src/khelpclient.cpp
+++ b/src/khelpclient.cpp
@@ -48,7 +48,7 @@ void KHelpClient::invokeHelp(const QString &anchor, const QString &_appname)
QString docPath;
const QStringList desktopDirs = QStandardPaths::standardLocations(QStandardPaths::ApplicationsLocation);
Q_FOREACH (const QString &dir, desktopDirs) {
- QDirIterator it(dir, QStringList() << appname + QLatin1String(".desktop"), QDir::NoFilter, QDirIterator::Subdirectories);
+ QDirIterator it(dir, QStringList() << appname + QLatin1String(".desktop"), QDir::NoFilter, QDirIterator::Subdirectories | QDirIterator::FollowSymlinks);
while (it.hasNext()) {
const QString desktopPath(it.next());
KDesktopFile desktopFile(desktopPath);
--
2.5.2

View File

@ -0,0 +1,18 @@
{ kdeFramework, lib, extra-cmake-modules, kauth, kcodecs, kconfig
, kdoctools, kguiaddons, ki18n, kwidgetsaddons, makeQtWrapper
}:
kdeFramework {
name = "kconfigwidgets";
nativeBuildInputs = [ extra-cmake-modules kdoctools makeQtWrapper ];
buildInputs = [ kguiaddons ];
propagatedBuildInputs = [ kauth kconfig kcodecs ki18n kwidgetsaddons ];
patches = [ ./0001-qdiriterator-follow-symlinks.patch ];
postInstall = ''
moveToOutput "bin/preparetips5" "$dev"
wrapQtProgram "$dev/bin/preparetips5"
'';
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,16 @@
{ kdeFramework, lib, makeQtWrapper
, extra-cmake-modules
, shared_mime_info
}:
kdeFramework {
name = "kcoreaddons";
nativeBuildInputs = [ extra-cmake-modules makeQtWrapper ];
buildInputs = [ shared_mime_info ];
postInstall = ''
wrapQtProgram "$out/bin/desktoptojson"
'';
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,16 @@
{ kdeFramework, lib
, extra-cmake-modules
, kcoreaddons
, kwindowsystem
, qtx11extras
}:
kdeFramework {
name = "kcrash";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ kcoreaddons ];
propagatedBuildInputs = [ kwindowsystem qtx11extras ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,17 @@
{ kdeFramework, lib
, extra-cmake-modules
, makeQtWrapper
, qtx11extras
}:
kdeFramework {
name = "kdbusaddons";
nativeBuildInputs = [ extra-cmake-modules makeQtWrapper ];
propagatedBuildInputs = [ qtx11extras ];
postInstall = ''
wrapQtProgram "$out/bin/kquitapp5"
'';
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,22 @@
{ kdeFramework, lib, extra-cmake-modules, epoxy, kconfig
, kglobalaccel, kguiaddons, ki18n, kiconthemes, kio, kpackage
, kwidgetsaddons, kwindowsystem, makeQtWrapper, pkgconfig
, qtdeclarative
}:
kdeFramework {
name = "kdeclarative";
nativeBuildInputs = [ extra-cmake-modules makeQtWrapper ];
buildInputs = [
epoxy kguiaddons kiconthemes kwidgetsaddons
];
propagatedBuildInputs = [
kconfig kglobalaccel ki18n kio kpackage kwindowsystem qtdeclarative
];
postInstall = ''
wrapQtProgram "$out/bin/kpackagelauncherqml"
'';
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,19 @@
{ kdeFramework, lib
, extra-cmake-modules
, kconfig
, kcoreaddons
, kcrash
, kdbusaddons
, kdoctools
, kinit
, kservice
}:
kdeFramework {
name = "kded";
buildInputs = [ kconfig kcoreaddons kcrash kdbusaddons kinit kservice ];
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,32 @@
{ kdeFramework, lib, extra-cmake-modules, docbook_xml_dtd_45, kauth
, karchive, kcompletion, kconfig, kconfigwidgets, kcoreaddons
, kcrash, kdbusaddons, kded, kdesignerplugin, kdoctools, kemoticons
, kglobalaccel, kguiaddons, ki18n, kiconthemes, kio, kitemmodels
, kinit, knotifications, kparts, kservice, ktextwidgets
, kunitconversion, kwidgetsaddons, kwindowsystem, kxmlgui
, networkmanager, qtsvg, qtx11extras, xlibs
}:
# TODO: debug docbook detection
kdeFramework {
name = "kdelibs4support";
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [
kcompletion kconfig kded kservice kwidgetsaddons
kxmlgui networkmanager qtsvg qtx11extras xlibs.libSM
];
propagatedBuildInputs = [
kauth karchive kconfigwidgets kcoreaddons kcrash kdbusaddons
kdesignerplugin kemoticons kglobalaccel kguiaddons ki18n kio
kiconthemes kitemmodels kinit knotifications kparts ktextwidgets
kunitconversion kwindowsystem
];
cmakeFlags = [
"-DDocBookXML4_DTD_DIR=${docbook_xml_dtd_45}/xml/dtd/docbook"
"-DDocBookXML4_DTD_VERSION=4.5"
];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,36 @@
{ kdeFramework, lib, copyPathsToStore
, extra-cmake-modules, docbook_xml_dtd_45, kauth
, karchive, kcompletion, kconfig, kconfigwidgets, kcoreaddons
, kcrash, kdbusaddons, kded, kdesignerplugin, kdoctools, kemoticons
, kglobalaccel, kguiaddons, ki18n, kiconthemes, kio, kitemmodels
, kinit, knotifications, kparts, kservice, ktextwidgets
, kunitconversion, kwidgetsaddons, kwindowsystem, kxmlgui
, networkmanager, qtsvg, qtx11extras, xlibs
}:
# TODO: debug docbook detection
kdeFramework {
name = "kdelibs4support";
outputs = [ "dev" "out" ];
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
setupHook = ./setup-hook.sh;
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [
kcompletion kconfig kded kservice kwidgetsaddons
kxmlgui networkmanager qtsvg qtx11extras xlibs.libSM
];
propagatedBuildInputs = [
kauth karchive kconfigwidgets kcoreaddons kcrash kdbusaddons
kdesignerplugin kemoticons kglobalaccel kguiaddons ki18n kio
kiconthemes kitemmodels kinit knotifications kparts ktextwidgets
kunitconversion kwindowsystem
];
cmakeFlags = [
"-DDocBookXML4_DTD_DIR=${docbook_xml_dtd_45}/xml/dtd/docbook"
"-DDocBookXML4_DTD_VERSION=4.5"
];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,13 @@
Index: kdelibs4support-5.18.0/src/kdecore/kstandarddirs.cpp
===================================================================
--- kdelibs4support-5.18.0.orig/src/kdecore/kstandarddirs.cpp
+++ kdelibs4support-5.18.0/src/kdecore/kstandarddirs.cpp
@@ -292,7 +292,7 @@ static QString relativeInstallPath(const
return QFile::decodeName(ICON_INSTALL_DIR "/");
}
if (strcmp("include", type) == 0) {
- return QFile::decodeName(INCLUDE_INSTALL_DIR "/");
+ return QFile::decodeName(qgetenv("NIX_KDE_INCLUDE_DIR"));
}
break;
case 'l':

View File

@ -0,0 +1 @@
nix-kde-include-dir.patch

View File

@ -0,0 +1 @@
export NIX_KDE_INCLUDE_DIR="@dev@/include/" # trailing slash is required!

View File

@ -0,0 +1,34 @@
{ kdeFramework, lib, makeQtWrapper
, extra-cmake-modules
, kcompletion
, kconfig
, kconfigwidgets
, kcoreaddons
, kdewebkit
, kdoctools
, kiconthemes
, kio
, kitemviews
, kplotting
, ktextwidgets
, kwidgetsaddons
, kxmlgui
, sonnet
}:
kdeFramework {
name = "kdesignerplugin";
nativeBuildInputs = [ extra-cmake-modules kdoctools makeQtWrapper ];
buildInputs = [
kcompletion kconfig kconfigwidgets kcoreaddons kdewebkit
kiconthemes kitemviews kplotting ktextwidgets kwidgetsaddons
kxmlgui
];
propagatedBuildInputs = [ kio sonnet ];
postInstall = ''
wrapQtProgram "$out/bin/kgendesignerplugin"
'';
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,13 @@
{ kdeFramework, lib, extra-cmake-modules, kcoreaddons, ki18n, kpty
, kservice
}:
kdeFramework {
name = "kdesu";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ kcoreaddons kservice ];
propagatedBuildInputs = [ ki18n kpty ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,13 @@
{ kdeFramework, lib, extra-cmake-modules, kconfig, kcoreaddons
, ki18n, kio, kjobwidgets, kparts, kservice, kwallet, qtwebkit
}:
kdeFramework {
name = "kdewebkit";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ kconfig kcoreaddons kjobwidgets kparts kservice kwallet ];
propagatedBuildInputs = [ ki18n kio qtwebkit ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,13 @@
{ kdeFramework, lib
, extra-cmake-modules
, avahi
}:
kdeFramework {
name = "kdnssd";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ avahi ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,19 @@
{ kdeFramework, lib, extra-cmake-modules, docbook_xml_dtd_45
, docbook5_xsl, karchive, ki18n, makeQtWrapper, perl, perlPackages
}:
kdeFramework {
name = "kdoctools";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ karchive ];
propagatedBuildInputs = [ ki18n ];
propagatedNativeBuildInputs = [ makeQtWrapper perl perlPackages.URI ];
cmakeFlags = [
"-DDocBookXML4_DTD_DIR=${docbook_xml_dtd_45}/xml/dtd/docbook"
"-DDocBookXSL_DIR=${docbook5_xsl}/xml/xsl/docbook"
];
patches = [ ./kdoctools-no-find-docbook-xml.patch ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,12 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5c4863c..f731775 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -46,7 +46,6 @@ set_package_properties(LibXml2 PROPERTIES
)
-find_package(DocBookXML4 "4.5")
set_package_properties(DocBookXML4 PROPERTIES
TYPE REQUIRED

View File

@ -0,0 +1,5 @@
addXdgData() {
addToSearchPath XDG_DATA_DIRS "$1/share"
}
envHooks+=(addXdgData)

View File

@ -0,0 +1,17 @@
{ kdeFramework, lib
, extra-cmake-modules
, karchive
, kconfig
, kcoreaddons
, kservice
}:
kdeFramework {
name = "kemoticons";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ karchive kconfig kcoreaddons ];
propagatedBuildInputs = [ kservice ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,13 @@
{ kdeFramework, lib, extra-cmake-modules, attr, ebook_tools, exiv2
, ffmpeg, karchive, ki18n, poppler, qtbase, taglib
}:
kdeFramework {
name = "kfilemetadata";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ attr ebook_tools exiv2 ffmpeg karchive poppler taglib ];
propagatedBuildInputs = [ qtbase ki18n ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,13 @@
Index: kfilemetadata-5.18.0/src/CMakeLists.txt
===================================================================
--- kfilemetadata-5.18.0.orig/src/CMakeLists.txt
+++ kfilemetadata-5.18.0/src/CMakeLists.txt
@@ -49,7 +49,7 @@ install(TARGETS KF5FileMetaData EXPORT K
install(EXPORT KF5FileMetaDataTargets
NAMESPACE KF5::
- DESTINATION ${LIB_INSTALL_DIR}/cmake/KF5FileMetaData
+ DESTINATION ${KDE_INSTALL_FULL_CMAKEPACKAGEDIR}/KF5FileMetaData
FILE KF5FileMetaDataTargets.cmake)
install(FILES

View File

@ -0,0 +1,14 @@
{ kdeFramework, lib, copyPathsToStore, extra-cmake-modules
, attr, ebook_tools, exiv2, ffmpeg, karchive, ki18n, poppler, qtbase, taglib
}:
kdeFramework {
name = "kfilemetadata";
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ attr ebook_tools exiv2 ffmpeg karchive poppler taglib ];
propagatedBuildInputs = [ qtbase ki18n ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1 @@
cmake-install-paths.patch

View File

@ -0,0 +1,23 @@
{ kdeFramework, lib
, extra-cmake-modules
, kconfig
, kcoreaddons
, kcrash
, kdbusaddons
, kwindowsystem
, makeQtWrapper
, qtx11extras
}:
kdeFramework {
name = "kglobalaccel";
nativeBuildInputs = [ extra-cmake-modules makeQtWrapper ];
buildInputs = [ kconfig kcoreaddons kcrash kdbusaddons ];
propagatedBuildInputs = [ kwindowsystem qtx11extras ];
postInstall = ''
wrapQtProgram "$out/bin/kglobalaccel5"
'';
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,13 @@
{ kdeFramework, lib
, extra-cmake-modules
, qtx11extras
}:
kdeFramework {
name = "kguiaddons";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ qtx11extras ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,21 @@
{ kdeFramework, lib, extra-cmake-modules, giflib, karchive
, kcodecs, kglobalaccel, ki18n, kiconthemes, kio, kjs
, knotifications, kparts, ktextwidgets, kwallet, kwidgetsaddons
, kwindowsystem, kxmlgui, perl, phonon, qtx11extras, sonnet
}:
kdeFramework {
name = "khtml";
nativeBuildInputs = [ extra-cmake-modules perl ];
buildInputs = [
giflib karchive kiconthemes knotifications kwallet kwidgetsaddons
kxmlgui phonon
];
propagatedBuildInputs = [
kcodecs kglobalaccel ki18n kio kjs kparts ktextwidgets
kwindowsystem qtx11extras sonnet
];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,17 @@
{ kdeFramework, lib
, extra-cmake-modules
, gettext
, python
, qtdeclarative
, qtscript
}:
kdeFramework {
name = "ki18n";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ qtdeclarative qtscript ];
propagatedNativeBuildInputs = [ gettext python ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,13 @@
Index: kiconthemes-5.17.0/src/kicontheme.cpp
===================================================================
--- kiconthemes-5.17.0.orig/src/kicontheme.cpp
+++ kiconthemes-5.17.0/src/kicontheme.cpp
@@ -557,7 +557,7 @@ void KIconTheme::reconfigure()
// static
QString KIconTheme::defaultThemeName()
{
- return QStringLiteral("oxygen");
+ return QStringLiteral("breeze");
}
void KIconTheme::assignIconsToContextMenu(ContextMenus type,

View File

@ -0,0 +1,18 @@
{ kdeFramework, lib, copyPathsToStore
, extra-cmake-modules, makeQtWrapper
, kconfigwidgets, ki18n, breeze-icons, kitemviews, qtsvg
}:
kdeFramework {
name = "kiconthemes";
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
nativeBuildInputs = [ extra-cmake-modules makeQtWrapper ];
buildInputs = [ kconfigwidgets kitemviews qtsvg ];
propagatedBuildInputs = [ breeze-icons ki18n ];
postInstall = ''
wrapQtProgram "$out/bin/kiconfinder5"
'';
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1 @@
default-theme-breeze.patch

View File

@ -0,0 +1,15 @@
{ kdeFramework, lib
, extra-cmake-modules
, qtbase
, qtx11extras
}:
kdeFramework {
name = "kidletime";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ qtx11extras ];
propagatedBuildInputs = [ qtbase ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,13 @@
{ kdeFramework, lib
, extra-cmake-modules
, ilmbase
}:
kdeFramework {
name = "kimageformats";
nativeBuildInputs = [ extra-cmake-modules ];
NIX_CFLAGS_COMPILE = "-I${ilmbase}/include/OpenEXR";
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,17 @@
{ kdeFramework, lib, copyPathsToStore, extra-cmake-modules, kconfig, kcrash
, kdoctools, ki18n, kio, kservice, kwindowsystem, libcap
, libcap_progs
}:
# TODO: setuid wrapper
kdeFramework {
name = "kinit";
nativeBuildInputs = [ extra-cmake-modules kdoctools libcap_progs ];
buildInputs = [ kconfig kcrash kservice libcap ];
propagatedBuildInputs = [ ki18n kio kwindowsystem ];
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,34 @@
Index: kinit-5.21.0/src/kdeinit/kinit.cpp
===================================================================
--- kinit-5.21.0.orig/src/kdeinit/kinit.cpp
+++ kinit-5.21.0/src/kdeinit/kinit.cpp
@@ -657,19 +657,16 @@ static pid_t launch(int argc, const char
if (!libpath.isEmpty()) {
if (libpath_relative) {
- // NB: Because Qt makes the actual dlopen() call, the
- // RUNPATH of kdeinit is *not* respected - see
- // https://sourceware.org/bugzilla/show_bug.cgi?id=13945
- // - so we try hacking it in ourselves
- QString install_lib_dir = QFile::decodeName(
- CMAKE_INSTALL_PREFIX "/" LIB_INSTALL_DIR "/");
- QString orig_libpath = libpath;
- libpath = install_lib_dir + libpath;
- l.setFileName(libpath);
- if (!l.load()) {
- libpath = orig_libpath;
- l.setFileName(libpath);
- l.load();
+ // Try to load the library relative to the active profiles.
+ QByteArrayList profiles = qgetenv("NIX_PROFILES").split(' ');
+ // Reverse the profile list.
+ std::reverse(profiles.begin(), profiles.end());
+ const QString libdir = QString::fromLatin1("/lib/");
+ Q_FOREACH (const QByteArray &profile, profiles) {
+ if (!profile.isEmpty()) {
+ l.setFileName(QFile::decodeName(profile) + libdir + libpath);
+ if (l.load()) break;
+ }
}
} else {
l.load();

View File

@ -0,0 +1 @@
kinit-libpath.patch

View File

@ -0,0 +1,33 @@
{ kdeFramework, lib, copyPathsToStore
, extra-cmake-modules, acl, karchive
, kbookmarks, kcompletion, kconfig, kconfigwidgets, kcoreaddons
, kdbusaddons, kdoctools, ki18n, kiconthemes, kitemviews
, kjobwidgets, knotifications, kservice, ktextwidgets, kwallet
, kwidgetsaddons, kwindowsystem, kxmlgui, makeQtWrapper
, qtscript, qtx11extras, solid
}:
kdeFramework {
name = "kio";
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
nativeBuildInputs = [ extra-cmake-modules kdoctools makeQtWrapper ];
buildInputs = [
acl karchive kconfig kcoreaddons kdbusaddons kiconthemes
knotifications ktextwidgets kwallet kwidgetsaddons
qtscript
];
propagatedBuildInputs = [
kbookmarks kcompletion kconfigwidgets ki18n kitemviews kjobwidgets
kservice kwindowsystem kxmlgui solid qtx11extras
];
postInstall = ''
wrapQtProgram "$out/bin/kcookiejar5"
wrapQtProgram "$out/bin/ktelnetservice5"
wrapQtProgram "$out/bin/ktrash5"
wrapQtProgram "$out/bin/kmailservice5"
wrapQtProgram "$out/bin/protocoltojson"
'';
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,28 @@
Index: kio-5.17.0/src/core/ksambashare.cpp
===================================================================
--- kio-5.17.0.orig/src/core/ksambashare.cpp
+++ kio-5.17.0/src/core/ksambashare.cpp
@@ -67,13 +67,18 @@ KSambaSharePrivate::~KSambaSharePrivate(
bool KSambaSharePrivate::isSambaInstalled()
{
- if (QFile::exists(QStringLiteral("/usr/sbin/smbd"))
- || QFile::exists(QStringLiteral("/usr/local/sbin/smbd"))) {
- return true;
+ const QByteArray pathEnv = qgetenv("PATH");
+ if (!pathEnv.isEmpty()) {
+ QLatin1Char pathSep(':');
+ QStringList paths = QFile::decodeName(pathEnv).split(pathSep, QString::SkipEmptyParts);
+ for (QStringList::iterator it = paths.begin(); it != paths.end(); ++it) {
+ it->append("/smbd");
+ if (QFile::exists(*it)) {
+ return true;
+ }
+ }
}
- //qDebug() << "Samba is not installed!";
-
return false;
}

View File

@ -0,0 +1 @@
samba-search-path.patch

View File

@ -0,0 +1,11 @@
{ kdeFramework, lib
, extra-cmake-modules
}:
kdeFramework {
name = "kitemmodels";
nativeBuildInputs = [ extra-cmake-modules ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,11 @@
{ kdeFramework, lib
, extra-cmake-modules
}:
kdeFramework {
name = "kitemviews";
nativeBuildInputs = [ extra-cmake-modules ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,16 @@
{ kdeFramework, lib
, extra-cmake-modules
, kcoreaddons
, kwidgetsaddons
, qtx11extras
}:
kdeFramework {
name = "kjobwidgets";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ kcoreaddons kwidgetsaddons ];
propagatedBuildInputs = [ qtx11extras ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,16 @@
{ kdeFramework, lib
, extra-cmake-modules
, kdoctools
, makeQtWrapper
}:
kdeFramework {
name = "kjs";
nativeBuildInputs = [ extra-cmake-modules kdoctools makeQtWrapper ];
postInstall = ''
wrapQtProgram "$out/bin/kjs5"
'';
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,17 @@
{ kdeFramework, lib, extra-cmake-modules, kdoctools, ki18n, kjs
, makeQtWrapper, qtsvg
}:
kdeFramework {
name = "kjsembed";
nativeBuildInputs = [ extra-cmake-modules kdoctools makeQtWrapper ];
buildInputs = [ qtsvg ];
propagatedBuildInputs = [ ki18n kjs ];
postInstall = ''
wrapQtProgram "$out/bin/kjscmd5"
wrapQtProgram "$out/bin/kjsconsole"
'';
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,15 @@
{ kdeFramework, lib
, extra-cmake-modules
, kparts
, kxmlgui
}:
kdeFramework {
name = "kmediaplayer";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ kxmlgui ];
propagatedBuildInputs = [ kparts ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,17 @@
{ kdeFramework, lib, extra-cmake-modules, attica, karchive
, kcompletion, kconfig, kcoreaddons, ki18n, kiconthemes, kio
, kitemviews, kservice, ktextwidgets, kwidgetsaddons, kxmlgui
}:
kdeFramework {
name = "knewstuff";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [
karchive kcompletion kconfig kcoreaddons kiconthemes
kitemviews ktextwidgets kwidgetsaddons
];
propagatedBuildInputs = [ attica ki18n kio kservice kxmlgui ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,21 @@
{ kdeFramework, lib
, extra-cmake-modules
, kcodecs
, kconfig
, kcoreaddons
, kwindowsystem
, phonon
, qtx11extras
}:
kdeFramework {
name = "knotifications";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [
kcodecs kconfig kcoreaddons phonon
];
propagatedBuildInputs = [ kwindowsystem qtx11extras ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,13 @@
{ kdeFramework, lib, extra-cmake-modules, kcompletion, kconfig
, ki18n, kio, phonon
}:
kdeFramework {
name = "knotifyconfig";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ kcompletion kconfig phonon ];
propagatedBuildInputs = [ ki18n kio ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,13 @@
Index: kpackage-5.18.0/src/kpackage/package.cpp
===================================================================
--- kpackage-5.18.0.orig/src/kpackage/package.cpp
+++ kpackage-5.18.0/src/kpackage/package.cpp
@@ -808,7 +808,7 @@ PackagePrivate::PackagePrivate()
: QSharedData(),
fallbackPackage(0),
metadata(0),
- externalPaths(false),
+ externalPaths(true),
valid(false),
checkedValid(false)
{

View File

@ -0,0 +1,23 @@
{ kdeFramework, lib, copyPathsToStore
, extra-cmake-modules
, karchive
, kconfig
, kcoreaddons
, kdoctools
, ki18n
, makeQtWrapper
}:
kdeFramework {
name = "kpackage";
nativeBuildInputs = [ extra-cmake-modules kdoctools makeQtWrapper ];
buildInputs = [ karchive kconfig ];
propagatedBuildInputs = [ kcoreaddons ki18n ];
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
postInstall = ''
wrapQtProgram "$out/bin/kpackagetool5"
'';
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,26 @@
Index: kpackage-5.18.0/src/kpackage/packageloader.cpp
===================================================================
--- kpackage-5.18.0.orig/src/kpackage/packageloader.cpp
+++ kpackage-5.18.0/src/kpackage/packageloader.cpp
@@ -241,7 +241,7 @@ QList<KPluginMetaData> PackageLoader::li
} else {
//qDebug() << "Not cached";
// If there's no cache file, fall back to listing the directory
- const QDirIterator::IteratorFlags flags = QDirIterator::Subdirectories;
+ const QDirIterator::IteratorFlags flags = QDirIterator::Subdirectories | QDirIterator::FollowSymlinks;
const QStringList nameFilters = QStringList(QStringLiteral("metadata.desktop")) << QStringLiteral("metadata.json");
QDirIterator it(plugindir, nameFilters, QDir::Files, flags);
Index: kpackage-5.18.0/src/kpackage/private/packagejobthread.cpp
===================================================================
--- kpackage-5.18.0.orig/src/kpackage/private/packagejobthread.cpp
+++ kpackage-5.18.0/src/kpackage/private/packagejobthread.cpp
@@ -146,7 +146,7 @@ bool indexDirectory(const QString& dir,
QJsonArray plugins;
- QDirIterator it(dir, *metaDataFiles, QDir::Files, QDirIterator::Subdirectories);
+ QDirIterator it(dir, *metaDataFiles, QDir::Files, QDirIterator::Subdirectories | QDirIterator::FollowSymlinks);
while (it.hasNext()) {
it.next();
const QString path = it.fileInfo().absoluteFilePath();

View File

@ -0,0 +1,2 @@
allow-external-paths.patch
qdiriterator-follow-symlinks.patch

View File

@ -0,0 +1,17 @@
{ kdeFramework, lib, extra-cmake-modules, kconfig, kcoreaddons
, ki18n, kiconthemes, kio, kjobwidgets, knotifications, kservice
, ktextwidgets, kwidgetsaddons, kxmlgui
}:
kdeFramework {
name = "kparts";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [
kconfig kcoreaddons kiconthemes kjobwidgets knotifications
kservice kwidgetsaddons
];
propagatedBuildInputs = [ ki18n kio ktextwidgets kxmlgui ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,15 @@
{ kdeFramework, lib, extra-cmake-modules, kcoreaddons, ki18n
, kitemviews, kservice, kwidgetsaddons, qtdeclarative
}:
kdeFramework {
name = "kpeople";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [
kcoreaddons kitemviews kservice kwidgetsaddons
];
propagatedBuildInputs = [ ki18n qtdeclarative ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,11 @@
{ kdeFramework, lib
, extra-cmake-modules
}:
kdeFramework {
name = "kplotting";
nativeBuildInputs = [ extra-cmake-modules ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,10 @@
{ kdeFramework, lib, extra-cmake-modules, kcoreaddons, ki18n }:
kdeFramework {
name = "kpty";
nativeBuildInputs = [ extra-cmake-modules ];
propagatedBuildInputs = [ kcoreaddons ki18n ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,14 @@
{ kdeFramework, lib, extra-cmake-modules, kcompletion, kcoreaddons
, kdoctools, ki18n, kiconthemes, kio, kparts, kwidgetsaddons
, kxmlgui, qtscript
}:
kdeFramework {
name = "kross";
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [ kcompletion kcoreaddons kxmlgui ];
propagatedBuildInputs = [ ki18n kiconthemes kio kparts kwidgetsaddons qtscript ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,16 @@
{ kdeFramework, lib, extra-cmake-modules, kconfig, kcoreaddons
, ki18n, kio, kservice, plasma-framework, qtquick1, solid
, threadweaver
}:
kdeFramework {
name = "krunner";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [
kconfig kcoreaddons kservice qtquick1 solid threadweaver
];
propagatedBuildInputs = [ ki18n kio plasma-framework ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,25 @@
From ae8919eb81abad369e4a26ffcd845b140983398d Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Wed, 14 Oct 2015 06:28:57 -0500
Subject: [PATCH 1/2] qdiriterator follow symlinks
---
src/sycoca/kbuildsycoca.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/sycoca/kbuildsycoca.cpp b/src/sycoca/kbuildsycoca.cpp
index 1deae14..250baa8 100644
--- a/src/sycoca/kbuildsycoca.cpp
+++ b/src/sycoca/kbuildsycoca.cpp
@@ -208,7 +208,7 @@ bool KBuildSycoca::build()
QStringList 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...
--
2.5.2

View File

@ -0,0 +1,25 @@
From 46d124da602d84b7611a7ff0ac0862168d451cdb Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Wed, 14 Oct 2015 06:31:29 -0500
Subject: [PATCH 2/2] no canonicalize path
---
src/sycoca/vfolder_menu.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/sycoca/vfolder_menu.cpp b/src/sycoca/vfolder_menu.cpp
index d3e31c3..d15d743 100644
--- a/src/sycoca/vfolder_menu.cpp
+++ b/src/sycoca/vfolder_menu.cpp
@@ -415,7 +415,7 @@ VFolderMenu::absoluteDir(const QString &_dir, const QString &baseDir, bool keepR
}
if (!relative) {
- QString resolved = QDir(dir).canonicalPath();
+ QString resolved = QDir::cleanPath(dir);
if (!resolved.isEmpty()) {
dir = resolved;
}
--
2.5.2

View File

@ -0,0 +1,18 @@
{ kdeFramework, lib, extra-cmake-modules, kconfig, kcoreaddons
, kcrash, kdbusaddons, kdoctools, ki18n, kwindowsystem
}:
kdeFramework {
name = "kservice";
propagatedNativeBuildInputs = [ extra-cmake-modules ];
nativeBuildInputs = [ kdoctools ];
buildInputs = [ kcrash kdbusaddons ];
propagatedBuildInputs = [ kconfig kcoreaddons ki18n kwindowsystem ];
patches = [
./0001-qdiriterator-follow-symlinks.patch
./0002-no-canonicalize-path.patch
];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,43 @@
addServicePkg() {
local propagated
for dir in "share/kservices5" "share/kservicetypes5"; do
if [[ -d "$1/$dir" ]]; then
propagated=
for pkg in $propagatedBuildInputs; do
if [[ "z$pkg" == "z$1" ]]; then
propagated=1
break
fi
done
if [[ -z $propagated ]]; then
propagatedBuildInputs="$propagatedBuildInputs $1"
fi
propagated=
for pkg in $propagatedUserEnvPkgs; do
if [[ "z$pkg" == "z$1" ]]; then
propagated=1
break
fi
done
if [[ -z $propagated ]]; then
propagatedUserEnvPkgs="$propagatedUserEnvPkgs $1"
fi
break
fi
done
}
envHooks+=(addServicePkg)
local propagated
for pkg in $propagatedBuildInputs; do
if [[ "z$pkg" == "z@out@" ]]; then
propagated=1
break
fi
done
if [[ -z $propagated ]]; then
propagatedBuildInputs="$propagatedBuildInputs @out@"
fi

View File

@ -0,0 +1,22 @@
{ kdeFramework, lib, copyPathsToStore
, extra-cmake-modules, makeQtWrapper, perl
, karchive, kconfig, kguiaddons, kiconthemes, kparts
, libgit2
, qtscript, qtxmlpatterns
, ki18n, kio, sonnet
}:
kdeFramework {
name = "ktexteditor";
nativeBuildInputs = [ extra-cmake-modules makeQtWrapper perl ];
buildInputs = [
karchive kconfig kguiaddons kiconthemes kparts
libgit2
qtscript qtxmlpatterns
];
propagatedBuildInputs = [ ki18n kio sonnet ];
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,36 @@
Index: ktexteditor-5.18.0/src/syntax/data/katehighlightingindexer.cpp
===================================================================
--- ktexteditor-5.18.0.orig/src/syntax/data/katehighlightingindexer.cpp
+++ ktexteditor-5.18.0/src/syntax/data/katehighlightingindexer.cpp
@@ -55,19 +55,16 @@ QStringList readListing(const QString &f
int main(int argc, char *argv[])
{
- // get app instance
- QCoreApplication app(argc, argv);
-
// ensure enough arguments are passed
- if (app.arguments().size() < 3)
+ if (argc < 3)
return 1;
// open schema
QXmlSchema schema;
- if (!schema.load(QUrl::fromLocalFile(app.arguments().at(2))))
+ if (!schema.load(QUrl::fromLocalFile(QString::fromLocal8Bit(argv[2]))))
return 2;
- const QString hlFilenamesListing = app.arguments().value(3);
+ const QString hlFilenamesListing = QString::fromLocal8Bit(argv[3]);
if (hlFilenamesListing.isEmpty()) {
return 1;
}
@@ -152,7 +149,7 @@ int main(int argc, char *argv[])
return anyError;
// create outfile, after all has worked!
- QFile outFile(app.arguments().at(1));
+ QFile outFile(QString::fromLocal8Bit(argv[1]));
if (!outFile.open(QIODevice::WriteOnly | QIODevice::Truncate))
return 7;

View File

@ -0,0 +1 @@
no-qcoreapplication.patch

View File

@ -0,0 +1,16 @@
{ kdeFramework, lib, extra-cmake-modules, kcompletion, kconfig
, kconfigwidgets, ki18n, kiconthemes, kservice, kwindowsystem
, sonnet
}:
kdeFramework {
name = "ktextwidgets";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [
kcompletion kconfig kconfigwidgets kiconthemes kservice
];
propagatedBuildInputs = [ ki18n kwindowsystem sonnet ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,10 @@
{ kdeFramework, lib, extra-cmake-modules, ki18n }:
kdeFramework {
name = "kunitconversion";
nativeBuildInputs = [ extra-cmake-modules ];
propagatedBuildInputs = [ ki18n ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,21 @@
{ kdeFramework, lib, extra-cmake-modules, kconfig, kconfigwidgets
, kcoreaddons , kdbusaddons, kdoctools, ki18n, kiconthemes
, knotifications , kservice, kwidgetsaddons, kwindowsystem, libgcrypt
, makeQtWrapper }:
kdeFramework {
name = "kwallet";
nativeBuildInputs = [ extra-cmake-modules kdoctools makeQtWrapper ];
buildInputs = [
kconfig kconfigwidgets kcoreaddons kdbusaddons kiconthemes
knotifications kservice kwidgetsaddons libgcrypt
];
propagatedBuildInputs = [ ki18n kwindowsystem ];
postInstall = ''
wrapQtProgram "$out/bin/kwalletd5"
wrapQtProgram "$out/bin/kwallet-query"
'';
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,11 @@
{ kdeFramework, lib
, extra-cmake-modules
}:
kdeFramework {
name = "kwidgetsaddons";
nativeBuildInputs = [ extra-cmake-modules ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,13 @@
{ kdeFramework, lib
, extra-cmake-modules
, qtx11extras
}:
kdeFramework {
name = "kwindowsystem";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ qtx11extras ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,18 @@
{ kdeFramework, lib, extra-cmake-modules, attica, kconfig
, kconfigwidgets, kglobalaccel, ki18n, kiconthemes, kitemviews
, ktextwidgets, kwindowsystem, sonnet
}:
kdeFramework {
name = "kxmlgui";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [
attica kconfig kiconthemes kitemviews ktextwidgets
];
propagatedBuildInputs = [
kconfigwidgets kglobalaccel ki18n kwindowsystem sonnet
];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,10 @@
{ kdeFramework, lib, extra-cmake-modules, ki18n, kio }:
kdeFramework {
name = "kxmlrpcclient";
nativeBuildInputs = [ extra-cmake-modules ];
propagatedBuildInputs = [ ki18n kio ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,13 @@
{ kdeFramework, lib
, extra-cmake-modules
, modemmanager
}:
kdeFramework {
name = "modemmanager-qt";
nativeBuildInputs = [ extra-cmake-modules ];
propagatedBuildInputs = [ modemmanager ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,13 @@
{ kdeFramework, lib
, extra-cmake-modules
, networkmanager
}:
kdeFramework {
name = "networkmanager-qt";
nativeBuildInputs = [ extra-cmake-modules ];
propagatedBuildInputs = [ networkmanager ];
meta = {
maintainers = [ lib.maintainers.ttuegel ];
};
}

View File

@ -0,0 +1,13 @@
{ kdeFramework
, lib
, extra-cmake-modules
}:
kdeFramework {
name = "oxygen-icons5";
nativeBuildInputs = [ extra-cmake-modules ];
meta = {
license = lib.licenses.lgpl3Plus;
maintainers = [ lib.maintainers.ttuegel ];
};
}

Some files were not shown because too many files have changed in this diff Show More