nixpkgs/pkgs/desktops/plasma-5/plasma-workspace/default.nix

86 lines
3.3 KiB
Nix
Raw Normal View History

2016-07-15 14:59:21 +00:00
{
mkDerivation, lib, fetchpatch,
2016-07-15 14:59:21 +00:00
extra-cmake-modules, kdoctools,
2016-07-15 14:59:21 +00:00
coreutils, dbus, gnugrep, gnused, isocodes, libdbusmenu, libSM, libXcursor,
libXtst, pam, wayland, xmessage, xprop, xrdb, xsetroot,
2017-05-26 20:44:36 +00:00
2016-07-15 14:59:21 +00:00
baloo, kactivities, kcmutils, kconfig, kcrash, kdbusaddons, kdeclarative,
kdelibs4support, kdesu, kglobalaccel, kidletime, kinit, kjsembed, knewstuff,
2017-05-26 20:44:36 +00:00
knotifyconfig, kpackage, krunner, kscreenlocker, ktexteditor, ktextwidgets,
2018-05-21 20:59:37 +00:00
kwallet, kwayland, kwin, kxmlrpcclient, libkscreen, libksysguard, libqalculate,
networkmanager-qt, phonon, plasma-framework, prison, solid, kholidays,
breeze-qt5,
2017-05-26 20:44:36 +00:00
qtgraphicaleffects, qtquickcontrols, qtquickcontrols2, qtscript, qttools,
qtwayland, qtx11extras,
2016-04-21 16:01:22 +00:00
}:
let inherit (lib) getBin getLib; in
mkDerivation {
2016-04-21 16:01:22 +00:00
name = "plasma-workspace";
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [
2017-06-18 08:59:15 +00:00
isocodes libdbusmenu libSM libXcursor libXtst pam wayland
baloo kactivities kcmutils kconfig kcrash kdbusaddons kdeclarative
kdelibs4support kdesu kglobalaccel kidletime kjsembed knewstuff
2017-05-26 20:44:36 +00:00
knotifyconfig kpackage krunner kscreenlocker ktexteditor ktextwidgets
2018-05-21 20:59:37 +00:00
kwallet kwayland kwin kxmlrpcclient libkscreen libksysguard libqalculate
networkmanager-qt phonon plasma-framework prison solid kholidays
2017-05-26 20:44:36 +00:00
qtgraphicaleffects qtquickcontrols qtquickcontrols2 qtscript qtwayland qtx11extras
2016-04-21 16:01:22 +00:00
];
outputs = [ "bin" "dev" "out" ];
2016-04-21 16:01:22 +00:00
cmakeFlags = [
"-DNIXPKGS_XMESSAGE=${getBin xmessage}/bin/xmessage"
"-DNIXPKGS_MKDIR=${getBin coreutils}/bin/mkdir"
"-DNIXPKGS_XRDB=${getBin xrdb}/bin/xrdb"
"-DNIXPKGS_QTPATHS=${getBin qttools}/bin/qtpaths"
"-DNIXPKGS_XSETROOT=${getBin xsetroot}/bin/xsetroot"
"-DNIXPKGS_XPROP=${getBin xprop}/bin/xprop"
"-DNIXPKGS_ID=${getBin coreutils}/bin/id"
"-DNIXPKGS_DBUS_UPDATE_ACTIVATION_ENVIRONMENT=${getBin dbus}/bin/dbus-update-activation-environment"
"-DNIXPKGS_START_KDEINIT_WRAPPER=${getLib kinit}/lib/libexec/kf5/start_kdeinit_wrapper"
"-DNIXPKGS_QDBUS=${getBin qttools}/bin/qdbus"
"-DNIXPKGS_KWRAPPER5=${getBin kinit}/bin/kwrapper5"
"-DNIXPKGS_KREADCONFIG5=${getBin kconfig}/bin/kreadconfig5"
"-DNIXPKGS_GREP=${getBin gnugrep}/bin/grep"
"-DNIXPKGS_KDEINIT5_SHUTDOWN=${getBin kinit}/bin/kdeinit5_shutdown"
"-DNIXPKGS_SED=${getBin gnused}/bin/sed"
2018-05-21 20:59:37 +00:00
"-DNIXPKGS_WALLPAPER_INSTALL_DIR=${getBin breeze-qt5}/share/wallpapers/"
];
# To regenerate ./plasma-workspace.patch,
#
# > git clone https://github.com/ttuegel/plasma-workspace
# > cd plasma-workspace
# > git checkout nixpkgs/$x.$y # where $x.$y.$z == $version
# ... make some commits ...
# > git diff v$x.$y.$z
#
# Add upstream patches to the list below. For new patchs, particularly if not
# submitted upstream, please make a pull request and add it to
# ./plasma-workspace.patch.
patches = [
./plasma-workspace.patch
(fetchpatch {
url = "https://github.com/KDE/plasma-workspace/commit/11e570d861858f3b3e2694e5f9ec242d7f9f12b9.patch";
sha256 = "1vk9yacb59k0v5mgbpgmciflca9r0ll4wh1d83ffx2y2v8sqwiv2";
})
];
preConfigure = ''
NIX_CFLAGS_COMPILE+=" -DNIXPKGS_KDOSTARTUPCONFIG5=\"''${!outputBin}/bin/kdostartupconfig5\""
cmakeFlags+=" -DNIXPKGS_STARTPLASMA=''${!outputBin}/lib/libexec/startplasma"
2016-04-21 16:01:22 +00:00
'';
postInstall = ''
moveToOutput lib/libexec/startplasma ''${!outputBin}
2016-04-21 16:01:22 +00:00
'';
}