lol
1{ stdenv, lib, makeWrapper, kdeEnv }:
2
3drv:
4
5{ targets, paths ? [] }:
6
7let
8 env = kdeEnv drv paths;
9in
10stdenv.mkDerivation {
11 inherit (drv) name;
12
13 drv = lib.getBin drv;
14 inherit env targets;
15 passthru = { unwrapped = drv; };
16
17 nativeBuildInputs = [ makeWrapper ];
18
19 unpackPhase = "true";
20 configurePhase = "runHook preConfigure; runHook postConfigure";
21 buildPhase = "true";
22
23 installPhase = ''
24 for t in $targets; do
25 if [ -a "$drv/$t" ]; then
26 makeWrapper "$drv/$t" "$out/$t" \
27 --argv0 '"$0"' \
28 --suffix PATH : "$out/bin:$env/bin" \
29 --prefix XDG_CONFIG_DIRS : "$env/etc/xdg" \
30 --prefix XDG_DATA_DIRS : "$env/share" \
31 --set QML_IMPORT_PATH "$env/lib/qt5/imports" \
32 --set QML2_IMPORT_PATH "$env/lib/qt5/qml" \
33 --set QT_PLUGIN_PATH "$env/lib/qt5/plugins"
34 else
35 echo "no such file or directory: $drv/$t"
36 exit 1
37 fi
38 done
39
40 mkdir -p "$out/nix-support"
41 ln -s "$env/nix-support/propagated-user-env-packages" "$out/nix-support/"
42 '';
43}