mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-26 17:03:01 +00:00
f45e4ff331
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
79 lines
2.9 KiB
Nix
79 lines
2.9 KiB
Nix
{
|
|
mkDerivation, lib, fetchpatch,
|
|
|
|
extra-cmake-modules, kdoctools,
|
|
|
|
coreutils, dbus, gnugrep, gnused, isocodes, libdbusmenu, libSM, libXcursor,
|
|
libXtst, libXft, pam, wayland, xmessage, xprop, xrdb, xsetroot,
|
|
|
|
baloo, breeze-qt5, kactivities, kactivities-stats, kcmutils, kconfig, kcrash,
|
|
kdbusaddons, kdeclarative, kdelibs4support, kdesu, kglobalaccel, kidletime,
|
|
kinit, kjsembed, knewstuff, knotifyconfig, kpackage, kpeople, krunner,
|
|
kscreenlocker, ktexteditor, ktextwidgets, kwallet, kwayland, kwin,
|
|
kxmlrpcclient, libkscreen, libksysguard, libqalculate, networkmanager-qt,
|
|
phonon, plasma-framework, prison, solid, kholidays, kquickcharts,
|
|
appstream-qt, plasma-wayland-protocols,
|
|
|
|
qtgraphicaleffects, qtquickcontrols, qtquickcontrols2, qtscript, qttools,
|
|
qtwayland, qtx11extras, qqc2-desktop-style,
|
|
|
|
pipewire, libdrm
|
|
}:
|
|
|
|
let inherit (lib) getBin getLib; in
|
|
|
|
mkDerivation {
|
|
name = "plasma-workspace";
|
|
passthru.providedSessions = [ "plasma" "plasmawayland" ];
|
|
|
|
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
|
|
buildInputs = [
|
|
isocodes libdbusmenu libSM libXcursor libXtst libXft pam wayland
|
|
|
|
baloo kactivities kactivities-stats kcmutils kconfig kcrash kdbusaddons
|
|
kdeclarative kdelibs4support kdesu kglobalaccel kidletime kjsembed knewstuff
|
|
knotifyconfig kpackage kpeople krunner kscreenlocker ktexteditor
|
|
ktextwidgets kwallet kwayland kwin kxmlrpcclient libkscreen libksysguard
|
|
libqalculate networkmanager-qt phonon plasma-framework prison solid
|
|
kholidays kquickcharts appstream-qt plasma-wayland-protocols
|
|
|
|
qtgraphicaleffects qtquickcontrols qtquickcontrols2 qtscript qtwayland
|
|
qtx11extras qqc2-desktop-style
|
|
|
|
pipewire libdrm
|
|
];
|
|
propagatedUserEnvPkgs = [ qtgraphicaleffects ];
|
|
outputs = [ "out" "dev" ];
|
|
|
|
cmakeFlags = [
|
|
''-DNIXPKGS_BREEZE_WALLPAPERS=${getBin breeze-qt5}/share/wallpapers''
|
|
];
|
|
|
|
patches = [
|
|
./0001-startkde.patch
|
|
./0002-absolute-wallpaper-install-dir.patch
|
|
# Included in 5.23.2
|
|
(fetchpatch {
|
|
name = "ignore-placeholder-screens";
|
|
url = "https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1125.patch";
|
|
sha256 = "sha256-lvcAxb301lQbfEKPcxMlfap9g7TjHOk50ZYX91RC7gY=";
|
|
})
|
|
];
|
|
|
|
# QT_INSTALL_BINS refers to qtbase, and qdbus is in qttools
|
|
postPatch = ''
|
|
substituteInPlace CMakeLists.txt \
|
|
--replace 'query_qmake(QtBinariesDir QT_INSTALL_BINS)' 'set(QtBinariesDir "${lib.getBin qttools}/bin")'
|
|
'';
|
|
|
|
NIX_CFLAGS_COMPILE = [
|
|
''-DNIXPKGS_XMESSAGE="${getBin xmessage}/bin/xmessage"''
|
|
''-DNIXPKGS_XRDB="${getBin xrdb}/bin/xrdb"''
|
|
''-DNIXPKGS_XSETROOT="${getBin xsetroot}/bin/xsetroot"''
|
|
''-DNIXPKGS_XPROP="${getBin xprop}/bin/xprop"''
|
|
''-DNIXPKGS_DBUS_UPDATE_ACTIVATION_ENVIRONMENT="${getBin dbus}/bin/dbus-update-activation-environment"''
|
|
''-DNIXPKGS_START_KDEINIT_WRAPPER="${getLib kinit}/libexec/kf5/start_kdeinit_wrapper"''
|
|
''-DNIXPKGS_KDEINIT5_SHUTDOWN="${getBin kinit}/bin/kdeinit5_shutdown"''
|
|
];
|
|
}
|