diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix index 9521e1debd7..f29f569cd3a 100644 --- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix +++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix @@ -1,4 +1,5 @@ { stdenv +, lib , fetchurl , zlib , alsaLib @@ -54,6 +55,7 @@ let else "_linux.i386" else throw "Flash Player is not supported on this platform"; + is-i686 = (stdenv.system == "i686-linux"); in stdenv.mkDerivation rec { name = "flashplayer-${version}"; @@ -67,19 +69,47 @@ stdenv.mkDerivation rec { buildInputs = [ unzip ]; postUnpack = '' - cd */*${arch} - tar -xvzf *${suffix}.tar.gz + pushd $sourceRoot + tar -xvzf *${arch}/*${suffix}.tar.gz + + ${ lib.optionalString is-i686 '' + tar -xvzf */*_sa.*.tar.gz + tar -xvzf */*_sa_debug.*.tar.gz + ''} + + popd ''; - sourceRoot = "."; + sourceRoot = "fp_${version}_archive"; dontStrip = true; dontPatchELF = true; + outputs = [ "out" ] ++ lib.optionals is-i686 ["sa" "saDbg" ]; + installPhase = '' mkdir -p $out/lib/mozilla/plugins cp -pv libflashplayer.so $out/lib/mozilla/plugins patchelf --set-rpath "$rpath" $out/lib/mozilla/plugins/libflashplayer.so + + ${ lib.optionalString is-i686 '' + mkdir -p $sa/bin + cp flashplayer $sa/bin/ + + patchelf \ + --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \ + --set-rpath "$rpath" \ + $sa/bin/flashplayer + + + mkdir -p $saDbg/bin + cp flashplayerdebugger $saDbg/bin/ + + patchelf \ + --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \ + --set-rpath "$rpath" \ + $saDbg/bin/flashplayerdebugger + ''} ''; passthru = { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d8a56bcb179..20011a65bad 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11846,6 +11846,10 @@ let debug = config.flashplayer.debug or false; }; + flashplayer-standalone = pkgsi686Linux.flashplayer.sa; + + flashplayer-standalone-debugger = pkgsi686Linux.flashplayer.saDbg; + fluxbox = callPackage ../applications/window-managers/fluxbox { }; fme = callPackage ../applications/misc/fme {