summary refs log blame commit diff
path: root/pkgs/applications/misc/houdini/default.nix
blob: f55752a229238b0f952a352d6400f44477953d80 (plain) (tree)
1
2
3
4
5
6
7
8
                                                                                                                  
 
                     


                                        
                                                                             
                                  



                                                                            
 
              
                      

    


















                                                                       
 
{ lib, stdenv, writeScript, callPackage, buildFHSUserEnv, undaemonize, unwrapped ? callPackage ./runtime.nix {} }:

buildFHSUserEnv rec {
  name = "houdini-${unwrapped.version}";

  targetPkgs = pkgs: with pkgs; [
    libGLU libGL alsa-lib fontconfig zlib libpng dbus nss nspr expat pciutils
    libxkbcommon libudev0-shim tbb
  ] ++ (with xorg; [
    libICE libSM libXmu libXi libXext libX11 libXrender libXcursor libXfixes
    libXrender libXcomposite libXdamage libXtst libxcb libXScrnSaver
  ]);

  passthru = {
    inherit unwrapped;
  };

  extraInstallCommands = let
    executables = [ "bin/houdini" "bin/hkey" "houdini/sbin/sesinetd" ];
  in ''
    WRAPPER=$out/bin/${name}
    EXECUTABLES="${lib.concatStringsSep " " executables}"
    for executable in $EXECUTABLES; do
      mkdir -p $out/$(dirname $executable)

      echo "#!${stdenv.shell}" >> $out/$executable
      echo "$WRAPPER ${unwrapped}/$executable \$@" >> $out/$executable
    done

    cd $out
    chmod +x $EXECUTABLES
  '';

  runScript = writeScript "${name}-wrapper" ''
    exec $@
  '';
}