From 2c4c712a7017e32d04622233450e183fe30ffea7 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Sat, 21 Mar 2015 18:46:54 -0500 Subject: [PATCH 1/6] kde4: use kdelibs from kdeApps_stable Upstream is releasing bugfixes to kdelibs only through KDE Applications releases, so this is the correct way to get updates until we discontinue KDE 4. This also ensures that kdeApps and kde4 are using the same version of kdelibs; different versions appear to be causing integration issues. --- pkgs/applications/kde-apps-14.12/default.nix | 4 ++-- pkgs/desktops/kde-4.14/default.nix | 4 +++- pkgs/top-level/all-packages.nix | 5 +++++ 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/kde-apps-14.12/default.nix b/pkgs/applications/kde-apps-14.12/default.nix index 555d4d472bcc..b34418401a0a 100644 --- a/pkgs/applications/kde-apps-14.12/default.nix +++ b/pkgs/applications/kde-apps-14.12/default.nix @@ -281,10 +281,10 @@ let buildInputs = super.kremotecontrol.buildInputs ++ [xlibs.libXtst]; }; - krfb = with pkgs; super.krfb // { + krfb = super.krfb // { buildInputs = super.krfb.buildInputs - ++ [xlibs.libXtst kde4.telepathy.common_internals]; + ++ [pkgs.xlibs.libXtst kde4.telepathy.common_internals]; }; libkdcraw = with pkgs; super.libkdcraw // { diff --git a/pkgs/desktops/kde-4.14/default.nix b/pkgs/desktops/kde-4.14/default.nix index 2b8e5d313cc7..f11a139aec72 100644 --- a/pkgs/desktops/kde-4.14/default.nix +++ b/pkgs/desktops/kde-4.14/default.nix @@ -1,4 +1,4 @@ -{ callPackage, callPackageOrig, stdenv, qt48, release ? "4.14.3" }: +{ callPackage, callPackageOrig, stdenv, qt48, release ? "4.14.3", kdelibs }: let branch = "4.14"; @@ -27,6 +27,8 @@ kde.modules // kde.individual // { inherit (kde) manifest modules individual splittedModuleList; + inherit kdelibs; + akonadi = callPackage ./support/akonadi { }; qt4 = qt48; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1ee388356262..3e1f78f29298 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10841,6 +10841,10 @@ let kdeApps_14_12 = recurseIntoAttrs (callPackage ../applications/kde-apps-14.12 { kf5 = kf57; qt5 = qt54; + pkgs = pkgs // { + cmake = cmake-3_2; + }; + kde4 = kde4.override { inherit (kdeApps_14_12) kdelibs; }; }); kdeApps_stable = kdeApps_14_12; kdeApps_latest = kdeApps_14_12; @@ -12840,6 +12844,7 @@ let callPackage = newScope (self // { cmake = cmake-3_2; }); kde4 = callPackageOrig dir { inherit callPackage callPackageOrig; + kdelibs = kdeApps_stable.kdelibs; }; in kde4 // { inherit kde4; From c918f57ebbd732dccc6bda88dda1b08ee7ae72ba Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Sat, 21 Mar 2015 18:54:29 -0500 Subject: [PATCH 2/6] kde4: remove obsolete kdelibs derivation --- pkgs/desktops/kde-4.14/kde-package/4.14.3.nix | 1 - pkgs/desktops/kde-4.14/kdelibs/kdelibs.nix | 48 ------------------- 2 files changed, 49 deletions(-) delete mode 100644 pkgs/desktops/kde-4.14/kdelibs/kdelibs.nix diff --git a/pkgs/desktops/kde-4.14/kde-package/4.14.3.nix b/pkgs/desktops/kde-4.14/kde-package/4.14.3.nix index d29840735abc..74d520415f35 100644 --- a/pkgs/desktops/kde-4.14/kde-package/4.14.3.nix +++ b/pkgs/desktops/kde-4.14/kde-package/4.14.3.nix @@ -48,7 +48,6 @@ hashes=builtins.listToAttrs[ {name="kdegraphics-mobipocket";value="0m41s8scy5hym6mk0kfmjj54dc3yxahsdrliaadixhp0fx02cx0v";} {name="kdegraphics-strigi-analyzer";value="08d2vrghwqkw4mg4vmgsynfnhygxpavxnscvs3z70hdff7i001f0";} {name="kdegraphics-thumbnailers";value="1lhb7m298mbz7dk50savqdz3p6lkbscn0gi6bqapji24464vlb8k";} - {name="kdelibs";value="17pxihhcbinr3jpwvi1iwfnqs2wiqh0jgf1is05yz13122hns87q";} {name="kdenetwork-filesharing";value="0a8vw6jj0kz0lq96mj3mfzpdvb6xpw8xvccwxhjqp164bzqdz66d";} {name="kdenetwork-strigi-analyzers";value="14px6ddp8flqd40bww0sl71jmn5bfqm9j3v6rqm63ii7z87qk6xl";} {name="kdepim";value="0i7r68r5nzflmpdkkzpj5xc3fwxg5903g1fj5g1yn79v5zx1gzd3";} diff --git a/pkgs/desktops/kde-4.14/kdelibs/kdelibs.nix b/pkgs/desktops/kde-4.14/kdelibs/kdelibs.nix deleted file mode 100644 index 52e0ebf2062d..000000000000 --- a/pkgs/desktops/kde-4.14/kdelibs/kdelibs.nix +++ /dev/null @@ -1,48 +0,0 @@ -{ kde, gcc, cmake, perl -, qt4, bzip2, fam, shared_mime_info, giflib, jasper, strigi -, openexr, avahi, kerberos, shared_desktop_ontologies, libXScrnSaver -, automoc4, soprano, qca2, attica, enchant, libdbusmenu_qt, grantlee -, docbook_xml_dtd_42, docbook_xsl, polkit_qt4, acl, attr, libXtst -, udev, herqq, phonon, libjpeg, xz, ilmbase, libxslt -, pkgconfig -}: - -kde { - -# TODO: media-player-info - - buildInputs = - [ pkgconfig attica avahi bzip2 enchant fam giflib grantlee herqq - libdbusmenu_qt libXScrnSaver polkit_qt4 qca2 acl jasper libxslt - shared_desktop_ontologies xz udev libjpeg kerberos openexr - libXtst attr - ]; - - NIX_CFLAGS_COMPILE = "-I${ilmbase}/include/OpenEXR"; - - propagatedBuildInputs = [ qt4 soprano phonon strigi ]; - - propagatedNativeBuildInputs = [ automoc4 cmake perl shared_mime_info ]; - - # TODO: make sonnet plugins (dictionaries) really work. - # There are a few hardcoded paths. - # Split plugins from libs? - - patches = [ - ../files/polkit-install.patch - ]; - - cmakeFlags = [ - "-DDOCBOOKXML_CURRENTDTD_DIR=${docbook_xml_dtd_42}/xml/dtd/docbook" - "-DDOCBOOKXSL_DIR=${docbook_xsl}/xml/xsl/docbook" - "-DHUPNP_ENABLED=ON" - "-DWITH_SOLID_UDISKS2=ON" - ]; - - passthru.wantsUdisks2 = true; - - meta = { - description = "KDE libraries"; - license = "LGPL"; - }; -} From 29808a11b6beb1263dcb2873e9cd107d94ea30cd Mon Sep 17 00:00:00 2001 From: Kirill Elagin Date: Thu, 19 Mar 2015 12:03:09 +0300 Subject: [PATCH 3/6] startkde: Qt 5.4 is here --- pkgs/desktops/plasma-5.2/startkde/startkde.in | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/pkgs/desktops/plasma-5.2/startkde/startkde.in b/pkgs/desktops/plasma-5.2/startkde/startkde.in index ff67ed769e2a..0693f1027817 100644 --- a/pkgs/desktops/plasma-5.2/startkde/startkde.in +++ b/pkgs/desktops/plasma-5.2/startkde/startkde.in @@ -63,15 +63,8 @@ fi # * Then ksmserver is started which takes control of the rest of the startup sequence # We need to create config folder so we can write startupconfigkeys -if [ ${XDG_CONFIG_HOME} ]; then - configDir=$XDG_CONFIG_HOME; -else - # This is the default - # http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html - configDir=${HOME}/.config; -fi - -mkdir -p $configDir +configDir=$(@qt5@/bin/qtpaths --writable-path GenericConfigLocation) +mkdir -p "$configDir" # This is basically setting defaults so we can use them with kstartupconfig5 cat @startupconfigkeys@ >$configDir/startupconfigkeys @@ -177,8 +170,7 @@ fi # For anything else (that doesn't set env vars, or that needs a window manager), # better use the Autostart folder. -# TODO: Use GenericConfigLocation once we depend on Qt 5.4 -scriptpath=`@qt5@/bin/qtpaths --paths ConfigLocation | tr ':' '\n' | @gnused@/bin/sed 's,$,/plasma-workspace,g'` +scriptpath=$(@qt5@/bin/qtpaths --paths GenericConfigLocation | tr ':' '\n' | @gnused@/bin/sed 's,$,/plasma-workspace,g') # Add /env/ to the directory to locate the scripts to be sourced for prefix in `echo $scriptpath`; do From 370e40aef5386316c78c84339d9c487ebd51c499 Mon Sep 17 00:00:00 2001 From: Kirill Elagin Date: Thu, 19 Mar 2015 14:01:20 +0300 Subject: [PATCH 4/6] startkde: Fix `kdostartupconfig5` path --- pkgs/desktops/plasma-5.2/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/desktops/plasma-5.2/default.nix b/pkgs/desktops/plasma-5.2/default.nix index 3b4aa6527355..dfaafa06a77a 100644 --- a/pkgs/desktops/plasma-5.2/default.nix +++ b/pkgs/desktops/plasma-5.2/default.nix @@ -132,6 +132,10 @@ let plasma-workspace = with pkgs; super.plasma-workspace // { buildInputs = with xlibs; super.plasma-workspace.buildInputs ++ [ libSM libXcursor pam ]; + postPatch = '' + substituteInPlace startkde/kstartupconfig/kstartupconfig.cpp \ + --replace kdostartupconfig5 $out/bin/kdostartupconfig5 + ''; postInstall = '' # We use a custom startkde script rm $out/bin/startkde From efb4fe269e68a0624b265ea4de55c392b53b2e08 Mon Sep 17 00:00:00 2001 From: Kirill Elagin Date: Mon, 16 Mar 2015 21:54:06 +0300 Subject: [PATCH 5/6] Yakuake: hardcode path to konsole --- pkgs/applications/misc/yakuake/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/misc/yakuake/default.nix b/pkgs/applications/misc/yakuake/default.nix index c781a5619ae4..323782d60fe0 100644 --- a/pkgs/applications/misc/yakuake/default.nix +++ b/pkgs/applications/misc/yakuake/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, kdelibs, gettext }: +{ stdenv, fetchurl, kdelibs, gettext, konsole }: let pname = "yakuake"; @@ -16,6 +16,10 @@ stdenv.mkDerivation { nativeBuildInputs = [ gettext ]; + patchPhase = '' + substituteInPlace app/terminal.cpp --replace \"konsolepart\" "\"${konsole}/lib/kde4/libkonsolepart.so\"" + ''; + meta = { homepage = http://yakuake.kde.org; description = "Quad-style terminal emulator for KDE"; From 70f2112231f5e8603dd3656a2447301ea9f7f3ab Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Sun, 22 Mar 2015 09:01:13 -0500 Subject: [PATCH 6/6] libgit2: build with cmake-3.2 --- pkgs/top-level/all-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3e1f78f29298..9aa82e9dd738 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5728,7 +5728,7 @@ let giblib = callPackage ../development/libraries/giblib { }; - libgit2 = callPackage ../development/libraries/git2 { }; + libgit2 = callPackage ../development/libraries/git2 { cmake = cmake-3_2; }; glew = callPackage ../development/libraries/glew { };