blob: 9acd56f324cbc807e7030e24886ef4c4e8a42592 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
{
mkDerivation, lib, writeScript,
extra-cmake-modules, kdoctools,
kconfig, kcrash, ki18n, kio, kparts, kservice, kwindowsystem, plasma-framework
}:
let inherit (lib) getLib; in
mkDerivation {
pname = "kinit";
outputs = [ "out" "dev" ];
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [
kconfig kcrash ki18n kio kservice kwindowsystem
];
patches = [
./0002-start_kdeinit-path.patch
./0003-kdeinit-extra-libs.patch
./0004-start_kdeinit-environ-hard-limit.patch
];
CXXFLAGS = [
''-DNIXPKGS_KF5_KIOCORE=\"${getLib kio}/lib/libKF5KIOCore.so.5\"''
''-DNIXPKGS_KF5_PARTS=\"${getLib kparts}/lib/libKF5Parts.so.5\"''
''-DNIXPKGS_KF5_PLASMA=\"${getLib plasma-framework}/lib/libKF5Plasma.so.5\"''
];
setupHook = writeScript "setup-hook.sh" ''
kinitFixupOutputHook() {
if [ $prefix != ''${!outputBin} ] && [ -d $prefix/lib ]; then
mkdir -p ''${!outputBin}/lib
find $prefix/lib -maxdepth 1 -name 'libkdeinit5_*.so' -exec ln -s \{\} ''${!outputBin}/lib \;
rmdir --ignore-fail-on-non-empty ''${!outputBin}/lib
fi
}
fixupOutputHooks+=(kinitFixupOutputHook)
'';
}
|