Skip to content

Commit

Permalink
kdeFrameworks: fixup inputs and outputs
Browse files Browse the repository at this point in the history
- Reduce environment pollution with a separate $bin output containing programs,
  plugins, and shared data. Libraries remain in $out and are not installed into
  the environment.
- Only propagate build inputs as required.
  • Loading branch information
ttuegel committed Jun 18, 2017
1 parent 087f20e commit faf0d3e
Show file tree
Hide file tree
Showing 106 changed files with 533 additions and 338 deletions.
4 changes: 2 additions & 2 deletions nixos/modules/services/x11/desktop-managers/plasma5.nix
Expand Up @@ -52,8 +52,8 @@ in
};

security.wrappers = {
kcheckpass.source = "${plasma5.plasma-workspace.out}/lib/libexec/kcheckpass";
"start_kdeinit".source = "${pkgs.kinit.out}/lib/libexec/kf5/start_kdeinit";
kcheckpass.source = "${lib.getBin plasma5.plasma-workspace}/lib/libexec/kcheckpass";
"start_kdeinit".source = "${lib.getBin pkgs.kinit}/lib/libexec/kf5/start_kdeinit";
};

environment.systemPackages = with pkgs; with qt5; with libsForQt5; with plasma5; with kdeApplications;
Expand Down
8 changes: 5 additions & 3 deletions pkgs/applications/kde/akonadi-contacts.nix
@@ -1,8 +1,8 @@
{
mkDerivation, lib,
extra-cmake-modules,
akonadi-mime, grantlee, kcontacts, kio, kitemmodels, kmime, qtwebengine,
akonadi
akonadi, akonadi-mime, grantlee, kcontacts, kdbusaddons, ki18n, kiconthemes,
kio, kitemmodels, kmime, ktextwidgets, qtwebengine,
}:

mkDerivation {
Expand All @@ -13,7 +13,9 @@ mkDerivation {
};
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [
akonadi-mime grantlee kcontacts kio kitemmodels kmime qtwebengine
akonadi-mime grantlee kcontacts kdbusaddons ki18n kiconthemes kio
kitemmodels kmime ktextwidgets qtwebengine
];
propagatedBuildInputs = [ akonadi ];
outputs = [ "out" "dev" ];
}
5 changes: 3 additions & 2 deletions pkgs/applications/kde/akonadi-mime.nix
@@ -1,7 +1,7 @@
{
mkDerivation, lib,
extra-cmake-modules,
akonadi, kdbusaddons, kio, kitemmodels, kmime
akonadi, kdbusaddons, ki18n, kio, kitemmodels, kmime
}:

mkDerivation {
Expand All @@ -11,5 +11,6 @@ mkDerivation {
maintainers = [ lib.maintainers.ttuegel ];
};
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ akonadi kdbusaddons kio kitemmodels kmime ];
buildInputs = [ akonadi kdbusaddons ki18n kio kitemmodels kmime ];
outputs = [ "out" "dev" ];
}
9 changes: 5 additions & 4 deletions pkgs/applications/kde/ark/default.nix
Expand Up @@ -3,8 +3,8 @@

extra-cmake-modules, kdoctools,

karchive, kconfig, kcrash, kdbusaddons, ki18n, kiconthemes, khtml, kio,
kservice, kpty, kwidgetsaddons, libarchive, kitemmodels,
karchive, kconfig, kcrash, kdbusaddons, ki18n, kiconthemes, kitemmodels,
khtml, kio, kparts, kpty, kservice, kwidgetsaddons, libarchive,

# Archive tools
p7zip, unzipNLS, zip,
Expand All @@ -17,9 +17,10 @@ mkDerivation {
name = "ark";
nativeBuildInputs = [ extra-cmake-modules kdoctools makeWrapper ];
propagatedBuildInputs = [
khtml ki18n kio karchive kconfig kcrash kdbusaddons kiconthemes kservice
kpty kwidgetsaddons libarchive kitemmodels
karchive kconfig kcrash kdbusaddons khtml ki18n kiconthemes kio kitemmodels
kparts kpty kservice kwidgetsaddons libarchive
];
outputs = [ "out" "dev" ];
postFixup =
let
PATH =
Expand Down
1 change: 1 addition & 0 deletions pkgs/applications/kde/baloo-widgets.nix
Expand Up @@ -14,4 +14,5 @@ mkDerivation {
propagatedBuildInputs = [
baloo kconfig kdelibs4support kfilemetadata ki18n kio kservice
];
outputs = [ "out" "dev" ];
}
1 change: 1 addition & 0 deletions pkgs/applications/kde/dolphin.nix
Expand Up @@ -20,4 +20,5 @@ mkDerivation {
kinit kio knewstuff knotifications kparts ktexteditor kwindowsystem
phonon solid
];
outputs = [ "out" "dev" ];
}
5 changes: 2 additions & 3 deletions pkgs/applications/kde/gwenview.nix
Expand Up @@ -13,9 +13,8 @@ mkDerivation {
maintainers = [ lib.maintainers.ttuegel ];
};
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [ exiv2 lcms2 ];
propagatedBuildInputs = [
baloo kactivities kdelibs4support kio libkdcraw libkipi phonon
buildInputs = [
baloo exiv2 kactivities kdelibs4support kio libkdcraw lcms2 libkipi phonon
qtimageformats qtsvg qtx11extras
];
propagatedUserEnvPkgs = [ kipi-plugins ];
Expand Down
6 changes: 2 additions & 4 deletions pkgs/applications/kde/kcontacts.nix
@@ -1,8 +1,7 @@
{
mkDerivation, lib,
extra-cmake-modules,
ki18n,
kcoreaddons, kconfig, kcodecs
kcoreaddons, kconfig, kcodecs, ki18n, qtbase,
}:

mkDerivation {
Expand All @@ -12,6 +11,5 @@ mkDerivation {
maintainers = [ lib.maintainers.ttuegel ];
};
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ ki18n ];
propagatedBuildInputs = [ kcoreaddons kconfig kcodecs ];
buildInputs = [ kcoreaddons kconfig kcodecs ki18n qtbase ];
}
4 changes: 2 additions & 2 deletions pkgs/applications/kde/kmime.nix
@@ -1,7 +1,7 @@
{
mkDerivation, lib,
extra-cmake-modules, ki18n,
kcodecs
kcodecs, qtbase,
}:

mkDerivation {
Expand All @@ -11,5 +11,5 @@ mkDerivation {
maintainers = [ lib.maintainers.ttuegel ];
};
nativeBuildInputs = [ extra-cmake-modules ki18n ];
buildInputs = [ kcodecs ];
buildInputs = [ kcodecs qtbase ];
}
5 changes: 3 additions & 2 deletions pkgs/applications/kde/kwalletmanager.nix
Expand Up @@ -8,6 +8,7 @@
, kcoreaddons
, kdbusaddons
, kdelibs4support
, kwallet
, kxmlgui
}:

Expand All @@ -18,8 +19,8 @@ mkDerivation {
maintainers = with lib.maintainers; [ fridh ];
};
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
propagatedBuildInputs = [
buildInputs = [
kauth kcmutils kconfigwidgets kcoreaddons kdbusaddons kdelibs4support
kxmlgui
kwallet kxmlgui
];
}
11 changes: 5 additions & 6 deletions pkgs/applications/kde/okular.nix
Expand Up @@ -4,18 +4,17 @@
djvulibre, ebook_tools, kactivities, karchive, kbookmarks, kcompletion,
kconfig, kconfigwidgets, kcoreaddons, kdbusaddons, kdegraphics-mobipocket,
kiconthemes, kjs, khtml, kio, kparts, kpty, kwallet, kwindowsystem, libkexiv2,
libspectre, poppler, qca-qt5, qtdeclarative, qtsvg, threadweaver
libspectre, phonon, poppler, qca-qt5, qtdeclarative, qtsvg, threadweaver
}:

mkDerivation {
name = "okular";
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [ djvulibre ebook_tools ];
propagatedBuildInputs = [
kactivities karchive kbookmarks kcompletion kconfig kconfigwidgets
buildInputs = [
djvulibre ebook_tools kactivities karchive kbookmarks kcompletion kconfig kconfigwidgets
kcoreaddons kdbusaddons kdegraphics-mobipocket kiconthemes kjs khtml kio
kparts kpty kwallet kwindowsystem libkexiv2 libspectre poppler qca-qt5
qtdeclarative qtsvg threadweaver
kparts kpty kwallet kwindowsystem libkexiv2 libspectre phonon poppler
qca-qt5 qtdeclarative qtsvg threadweaver
];
meta = {
platforms = lib.platforms.linux;
Expand Down
3 changes: 2 additions & 1 deletion pkgs/applications/kde/spectacle.nix
Expand Up @@ -4,6 +4,7 @@
ki18n, xcb-util-cursor,
kconfig, kcoreaddons, kdbusaddons, kdeclarative, kio, kipi-plugins,
knotifications, kscreen, kwidgetsaddons, kwindowsystem, kxmlgui, libkipi,
qtx11extras
}:

mkDerivation {
Expand All @@ -13,7 +14,7 @@ mkDerivation {
buildInputs = [ ki18n xcb-util-cursor ];
propagatedBuildInputs = [
kconfig kcoreaddons kdbusaddons kdeclarative kio knotifications
kscreen kwidgetsaddons kwindowsystem kxmlgui libkipi
kscreen kwidgetsaddons kwindowsystem kxmlgui libkipi qtx11extras
];
propagatedUserEnvPkgs = [ kipi-plugins ];
}
3 changes: 1 addition & 2 deletions pkgs/desktops/plasma-5/bluedevil.nix
Expand Up @@ -7,11 +7,10 @@
mkDerivation {
name = "bluedevil";
nativeBuildInputs = [ extra-cmake-modules shared_mime_info ];
propagatedBuildInputs = [
buildInputs = [
bluez-qt ki18n kio kwindowsystem plasma-framework qtdeclarative kcoreaddons
kdbusaddons kded kiconthemes knotifications kwidgetsaddons
];
propagatedUserEnvPkgs = [ bluez-qt.out ];
postInstall = ''
# Fix the location of logic.js for the plasmoid
ln -s $out/share/plasma/plasmoids/org.kde.plasma.bluetooth/contents/code/logic.js $out/share/plasma/plasmoids/org.kde.plasma.bluetooth/contents/ui/logic.js
Expand Down
6 changes: 4 additions & 2 deletions pkgs/desktops/plasma-5/breeze-qt5.nix
Expand Up @@ -2,7 +2,8 @@
mkDerivation,
extra-cmake-modules,
frameworkintegration, kcmutils, kconfigwidgets, kcoreaddons, kdecoration,
kguiaddons, ki18n, kwayland, kwindowsystem, plasma-framework, qtx11extras
kguiaddons, ki18n, kwayland, kwindowsystem, plasma-framework, qtdeclarative,
qtx11extras
}:

mkDerivation {
Expand All @@ -11,7 +12,8 @@ mkDerivation {
nativeBuildInputs = [ extra-cmake-modules ];
propagatedBuildInputs = [
frameworkintegration kcmutils kconfigwidgets kcoreaddons kdecoration
kguiaddons ki18n kwayland kwindowsystem plasma-framework qtx11extras
kguiaddons ki18n kwayland kwindowsystem plasma-framework qtdeclarative
qtx11extras
];
cmakeFlags = [ "-DUSE_Qt4=OFF" ];
}
2 changes: 1 addition & 1 deletion pkgs/desktops/plasma-5/kactivitymanagerd.nix
Expand Up @@ -7,7 +7,7 @@
mkDerivation {
name = "kactivitymanagerd";
nativeBuildInputs = [ extra-cmake-modules ];
propagatedBuildInputs = [
buildInputs = [
boost kconfig kcoreaddons kdbusaddons kglobalaccel ki18n kio kwindowsystem
kxmlgui
];
Expand Down
10 changes: 5 additions & 5 deletions pkgs/desktops/plasma-5/kde-cli-tools.nix
@@ -1,14 +1,14 @@
{
mkDerivation, extra-cmake-modules,
kcmutils, kconfig, kdelibs4support, kdesu, kdoctools, ki18n, kiconthemes,
kwindowsystem, qtsvg, qtx11extras
mkDerivation, extra-cmake-modules, kdoctools,
kcmutils, kconfig, kdesu, ki18n, kiconthemes, kinit, kio, kwindowsystem,
qtsvg, qtx11extras,
}:

mkDerivation {
name = "kde-cli-tools";
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
propagatedBuildInputs = [
kcmutils kconfig kdesu kdelibs4support ki18n kiconthemes kwindowsystem qtsvg
buildInputs = [
kcmutils kconfig kdesu ki18n kiconthemes kinit kio kwindowsystem qtsvg
qtx11extras
];
}
2 changes: 1 addition & 1 deletion pkgs/desktops/plasma-5/kde-gtk-config/default.nix
Expand Up @@ -16,7 +16,7 @@ mkDerivation {
name = "kde-gtk-config";
patches = [ ./0001-follow-symlinks.patch ];
nativeBuildInputs = [ extra-cmake-modules ];
propagatedBuildInputs = [
buildInputs = [
ki18n kio glib gtk2 gtk3 karchive kcmutils kconfigwidgets kiconthemes
knewstuff
];
Expand Down
16 changes: 8 additions & 8 deletions pkgs/desktops/plasma-5/kdeplasma-addons.nix
@@ -1,17 +1,17 @@
{ mkDerivation, extra-cmake-modules, kdoctools
, kconfig, kconfigwidgets, kcoreaddons, kcmutils, kdelibs4support, ki18n
, kio, knewstuff, kross, krunner, kservice, ksysguard, kunitconversion
, plasma-framework, plasma-workspace, qtdeclarative, qtx11extras
, ibus
{
mkDerivation,
extra-cmake-modules, kdoctools,
kconfig, kconfigwidgets, kcoreaddons, kcmutils, kdelibs4support, ki18n, kio,
knewstuff, kross, krunner, kservice, ksysguard, kunitconversion, ibus,
plasma-framework, plasma-workspace, qtdeclarative, qtx11extras,
}:

mkDerivation {
name = "kdeplasma-addons";
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
propagatedBuildInputs = [
buildInputs = [
kconfig kconfigwidgets kcoreaddons kcmutils kdelibs4support kio knewstuff
kross krunner kservice ksysguard kunitconversion plasma-framework
kross krunner kservice ksysguard kunitconversion ibus plasma-framework
plasma-workspace qtdeclarative qtx11extras
ibus
];
}
8 changes: 5 additions & 3 deletions pkgs/desktops/plasma-5/kgamma5.nix
@@ -1,9 +1,11 @@
{ mkDerivation, extra-cmake-modules, kdoctools, kdelibs4support
, qtx11extras
{
mkDerivation,
extra-cmake-modules, kdoctools,
kconfig, kconfigwidgets, ki18n, qtx11extras,
}:

mkDerivation {
name = "kgamma5";
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
propagatedBuildInputs = [ kdelibs4support qtx11extras ];
buildInputs = [ kconfig kconfigwidgets ki18n qtx11extras ];
}
6 changes: 3 additions & 3 deletions pkgs/desktops/plasma-5/khotkeys.nix
Expand Up @@ -7,8 +7,8 @@
mkDerivation {
name = "khotkeys";
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
propagatedBuildInputs = [
kdelibs4support kglobalaccel ki18n kio plasma-framework plasma-workspace
qtx11extras kcmutils kdbusaddons kxmlgui
buildInputs = [
kcmutils kdbusaddons kdelibs4support kglobalaccel ki18n kio kxmlgui
plasma-framework plasma-workspace qtx11extras
];
}
2 changes: 1 addition & 1 deletion pkgs/desktops/plasma-5/kinfocenter.nix
Expand Up @@ -9,7 +9,7 @@
mkDerivation {
name = "kinfocenter";
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
propagatedBuildInputs = [
buildInputs = [
kcmutils kcompletion kconfig kconfigwidgets kcoreaddons kdbusaddons
kdeclarative kdelibs4support ki18n kiconthemes kio kpackage kservice
kwayland kwidgetsaddons kxmlgui libraw1394 mesa_glu pciutils solid
Expand Down
6 changes: 3 additions & 3 deletions pkgs/desktops/plasma-5/kscreen.nix
Expand Up @@ -6,8 +6,8 @@
mkDerivation {
name = "kscreen";
nativeBuildInputs = [ extra-cmake-modules ];
propagatedBuildInputs = [
kglobalaccel ki18n libkscreen qtdeclarative qtgraphicaleffects kconfig
kconfigwidgets kdbusaddons kwidgetsaddons kxmlgui
buildInputs = [
kconfig kconfigwidgets kdbusaddons kglobalaccel ki18n kwidgetsaddons kxmlgui
libkscreen qtdeclarative qtgraphicaleffects
];
}
5 changes: 3 additions & 2 deletions pkgs/desktops/plasma-5/kscreenlocker.nix
Expand Up @@ -2,14 +2,15 @@
mkDerivation,
extra-cmake-modules, kdoctools,
kcmutils, kcrash, kdeclarative, kdelibs4support, kglobalaccel, kidletime,
kwayland, libXcursor, pam, plasma-framework, qtdeclarative, wayland
kwayland, libXcursor, pam, plasma-framework, qtdeclarative, qtx11extras,
wayland,
}:

mkDerivation {
name = "kscreenlocker";
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
propagatedBuildInputs = [
kcmutils kcrash kdeclarative kdelibs4support kglobalaccel kidletime kwayland
libXcursor pam plasma-framework qtdeclarative wayland
libXcursor pam plasma-framework qtdeclarative qtx11extras wayland
];
}
8 changes: 5 additions & 3 deletions pkgs/desktops/plasma-5/ksshaskpass.nix
@@ -1,9 +1,11 @@
{ mkDerivation, extra-cmake-modules, kdoctools, kcoreaddons
, ki18n, kwallet, kwidgetsaddons
{
mkDerivation,
extra-cmake-modules, kdoctools,
kcoreaddons, ki18n, kwallet, kwidgetsaddons, qtbase,
}:

mkDerivation {
name = "ksshaskpass";
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
propagatedBuildInputs = [ kcoreaddons ki18n kwallet kwidgetsaddons ];
buildInputs = [ kcoreaddons ki18n kwallet kwidgetsaddons qtbase ];
}
1 change: 0 additions & 1 deletion pkgs/desktops/plasma-5/kwallet-pam.nix
Expand Up @@ -2,7 +2,6 @@

mkDerivation {
name = "kwallet-pam";

nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ pam socat libgcrypt qtbase ];
postPatch = ''
Expand Down
8 changes: 6 additions & 2 deletions pkgs/desktops/plasma-5/kwayland-integration.nix
@@ -1,7 +1,11 @@
{ mkDerivation , extra-cmake-modules , kidletime , kwayland , kwindowsystem }:
{
mkDerivation,
extra-cmake-modules,
kidletime, kwayland, kwindowsystem, qtbase,
}:

mkDerivation {
name = "kwayland-integration";
nativeBuildInputs = [ extra-cmake-modules ];
propagatedBuildInputs = [ kidletime kwindowsystem kwayland ];
buildInputs = [ kidletime kwindowsystem kwayland qtbase ];
}

0 comments on commit faf0d3e

Please sign in to comment.