diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/kde-frameworks/kinit/default.nix')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/kde-frameworks/kinit/default.nix | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/kde-frameworks/kinit/default.nix b/nixpkgs/pkgs/development/libraries/kde-frameworks/kinit/default.nix new file mode 100644 index 000000000000..654f6e20604a --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/kde-frameworks/kinit/default.nix @@ -0,0 +1,39 @@ +{ + mkDerivation, lib, writeScript, + extra-cmake-modules, kdoctools, + kconfig, kcrash, ki18n, kio, kparts, kservice, kwindowsystem, plasma-framework +}: + +let inherit (lib) getLib; in + +mkDerivation { + name = "kinit"; + meta = { maintainers = [ lib.maintainers.ttuegel ]; }; + outputs = [ "out" "dev" ]; + nativeBuildInputs = [ extra-cmake-modules kdoctools ]; + buildInputs = [ + kconfig kcrash ki18n kio kservice kwindowsystem + ]; + patches = [ + ./0001-kinit-libpath.patch + ./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) + ''; +} |