summary refs log tree commit diff
path: root/pkgs/build-support/kdewrapper
diff options
context:
space:
mode:
authorLluís Batlle i Rossell <viric@viric.name>2013-05-09 18:40:29 +0000
committerLluís Batlle i Rossell <viric@viric.name>2013-05-09 18:40:29 +0000
commit4e7208fe2e956eb69a6d5fc3d5cafa7ba373f564 (patch)
tree52cd50aa012a43c3c6672bfab80588b57565cec9 /pkgs/build-support/kdewrapper
parente083d32d22c785bfd1f01f89872683f77df1b6dc (diff)
downloadnixlib-4e7208fe2e956eb69a6d5fc3d5cafa7ba373f564.tar
nixlib-4e7208fe2e956eb69a6d5fc3d5cafa7ba373f564.tar.gz
nixlib-4e7208fe2e956eb69a6d5fc3d5cafa7ba373f564.tar.bz2
nixlib-4e7208fe2e956eb69a6d5fc3d5cafa7ba373f564.tar.lz
nixlib-4e7208fe2e956eb69a6d5fc3d5cafa7ba373f564.tar.xz
nixlib-4e7208fe2e956eb69a6d5fc3d5cafa7ba373f564.tar.zst
nixlib-4e7208fe2e956eb69a6d5fc3d5cafa7ba373f564.zip
Adding a KDE wrapper, to easily have KDE programs in nix-env.
Specially for those not running KDE.
Diffstat (limited to 'pkgs/build-support/kdewrapper')
-rw-r--r--pkgs/build-support/kdewrapper/default.nix40
1 files changed, 40 insertions, 0 deletions
diff --git a/pkgs/build-support/kdewrapper/default.nix b/pkgs/build-support/kdewrapper/default.nix
new file mode 100644
index 000000000000..a9418ba1f96a
--- /dev/null
+++ b/pkgs/build-support/kdewrapper/default.nix
@@ -0,0 +1,40 @@
+{ stdenv, kde4, shared_mime_info, extraLibs ? [] }:
+
+/* Supply a KDE program, and it will have the necessary KDE vars to
+  get icons, mime types, etc. working.
+  For example:
+  
+  packageOverrides = pkgs : {
+    kdenliveWrapped = kde4.wrapper kde4.kdenlive;
+  };
+  */
+program:
+
+let
+  libs = with kde4; [ kdelibs kde_runtime oxygen_icons shared_mime_info ] + extra;
+in
+stdenv.mkDerivation {
+  name = program.name + "-wrapped";
+
+  inherit libs;
+
+  buildCommand = ''
+    ensureDir $out/bin
+
+    KDEDIRS=
+    QT_PLUGIN_PATH=
+    for a in $libs; do
+      KDEDIRS=$a''${KDEDIRS:+:}$KDEDIRS
+      QT_PLUGIN_PATH=$a''${KDEDIRS:+:}$KDEDIRS
+    done
+    for a in ${program}/bin/*; do 
+      PROG=$out/bin/`basename $a` 
+    cat > $PROG << END
+      export KDEDIRS=$KDEDIRS
+      export QT_PLUGIN_PATH=$KDEDIRS
+      exec $a "\$@"
+    END
+    chmod +x $PROG
+    done
+  '';
+}