diff options
author | Jörg Thalheim <Mic92@users.noreply.github.com> | 2018-11-12 17:48:56 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-11-12 17:48:56 +0000 |
commit | 968b20e2c7405f27830b6f10a8cac975e965dc94 (patch) | |
tree | 97a4fdcb2242ddca825993d1fba17b8579a4c098 | |
parent | 9e4456ce49c1e93aa54d4a1562f04aebc706fa8d (diff) | |
parent | b4d9f6ddca2597af0323f4546b4ae466e0280243 (diff) | |
download | nixpkgs-968b20e2c7405f27830b6f10a8cac975e965dc94.tar nixpkgs-968b20e2c7405f27830b6f10a8cac975e965dc94.tar.gz nixpkgs-968b20e2c7405f27830b6f10a8cac975e965dc94.tar.bz2 nixpkgs-968b20e2c7405f27830b6f10a8cac975e965dc94.tar.lz nixpkgs-968b20e2c7405f27830b6f10a8cac975e965dc94.tar.xz nixpkgs-968b20e2c7405f27830b6f10a8cac975e965dc94.tar.zst nixpkgs-968b20e2c7405f27830b6f10a8cac975e965dc94.zip |
Merge pull request #50276 from corngood/android-emulator-fix
androidsdk: fix emulator
-rw-r--r-- | pkgs/development/mobile/androidenv/androidsdk.nix | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/pkgs/development/mobile/androidenv/androidsdk.nix b/pkgs/development/mobile/androidenv/androidsdk.nix index a463adaf731..26750aed6cf 100644 --- a/pkgs/development/mobile/androidenv/androidsdk.nix +++ b/pkgs/development/mobile/androidenv/androidsdk.nix @@ -41,10 +41,16 @@ stdenv.mkDerivation rec { } else throw "platform not ${stdenv.hostPlatform.system} supported!"; + emulator = fetchurl { + url = "https://dl.google.com/android/repository/emulator-linux-4969155.zip"; + sha256 = "0iw0j6j3w9zpfalsa7xq2czz4vzgq96zk2zddjhanwwx4p8fhrfd"; + }; + buildCommand = '' mkdir -p $out/libexec cd $out/libexec unpackFile $src + unpackFile $emulator cd tools for f in monitor bin/monkeyrunner bin/uiautomatorviewer @@ -76,13 +82,16 @@ stdenv.mkDerivation rec { # The emulators need additional libraries, which are dynamically loaded => let's wrap them ${stdenv.lib.optionalString (stdenv.hostPlatform.system == "x86_64-linux") '' - for i in emulator emulator-check + cd .. + for i in emulator/emulator* emulator/qemu/linux-x86_64/qemu-system-* do + patchelf --set-interpreter ${stdenv.cc.libc.out}/lib/ld-linux-x86-64.so.2 $i wrapProgram `pwd`/$i \ --prefix PATH : ${stdenv.lib.makeBinPath [ file glxinfo ]} \ --suffix LD_LIBRARY_PATH : `pwd`/lib:${makeLibraryPath [ stdenv.cc.cc libX11 libxcb libXau libXdmcp libXext libGLU_combined alsaLib zlib libpulseaudio dbus.lib ]} \ --suffix QT_XKB_CONFIG_ROOT : ${xkeyboardconfig}/share/X11/xkb done + cd tools ''} ''} @@ -93,7 +102,7 @@ stdenv.mkDerivation rec { # The monitor requires some more patching cd lib/monitor-x86 - patchelf --set-interpreter ${stdenv.cc.libc.out}/lib/ld-linux.so.2 monitor + patchelf --set-interpreter ${stdenv_32bit.cc.libc.out}/lib/ld-linux.so.2 monitor patchelf --set-rpath ${makeLibraryPath [ libX11 libXext libXrender freetype fontconfig ]} libcairo-swt.so wrapProgram `pwd`/monitor \ @@ -263,6 +272,14 @@ stdenv.mkDerivation rec { fi done + for i in $out/libexec/emulator/* + do + if [ ! -d $i ] && [ -x $i ] + then + ln -sf $i $out/bin/$(basename $i) + fi + done + wrapProgram $out/bin/sdkmanager \ --set JAVA_HOME ${jdk} |