anchor.diff:      ''}
       
       # Launch the emulator
  -    ${androidsdkComposition}/libexec/android-sdk-*/tools/emulator -avd device -no-boot-anim -port $port &
  +    ${androidsdkComposition}/libexec/android-sdk-*/tools/emulator -avd device -no-boot-anim -port $port $NIX_ANDROID_EMULATOR_FLAGS &
   
       # Wait until the device has completely booted
       
  -    echo "Waiting until the emulator has booted the device and the package manager is ready..."
  +    echo "Waiting until the emulator has booted the device and the package manager is ready..." >&2
       
       ${androidsdkComposition}/libexec/android-sdk-*/platform-tools/adb -s emulator-$port wait-for-device
       
  -    echo "Device state has been reached"
  +    echo "Device state has been reached" >&2
       
       while [ -z "$(${androidsdkComposition}/libexec/android-sdk-*/platform-tools/adb -s emulator-$port shell getprop dev.bootcomplete | grep 1)" ]
       do
           sleep 5
       done
       
  -    echo "dev.bootcomplete property is 1"
  +    echo "dev.bootcomplete property is 1" >&2
       
       #while [ -z "$(${androidsdkComposition}/libexec/android-sdk-*/platform-tools/adb -s emulator-$port shell getprop sys.boot_completed | grep 1)" ]
       #do
           #sleep 5
       #done
       
  -    #echo "sys.boot_completed property is 1"
  +    #echo "sys.boot_completed property is 1" >&2
       
  -    echo "ready"
  +    echo "ready" >&2
       
  -    # Install the App through the debugger
  -    ${androidsdkComposition}/libexec/android-sdk-*/platform-tools/adb -s emulator-$port install ${app}/*.apk
  +    ${stdenv.lib.optionalString (app != null) ''
  +      # Install the App through the debugger
  +      ${androidsdkComposition}/libexec/android-sdk-*/platform-tools/adb -s emulator-$port install ${app}/*.apk
       
  -    # Start the application
  -    ${androidsdkComposition}/libexec/android-sdk-*/platform-tools/adb -s emulator-$port shell am start -a android.intent.action.MAIN -n ${package}/.${activity}
  +      # Start the application
  +      ${androidsdkComposition}/libexec/android-sdk-*/platform-tools/adb -s emulator-$port shell am start -a android.intent.action.MAIN -n ${package}/.${activity}
  +    ''}
       EOF
  -    
       chmod +x $out/bin/run-test-emulator
     '';
   }
  
positive.code:     
      # We have to look for a free TCP port
      
      echo "Looking for a free TCP port in range 5554-5584"
      
      for i in $(seq 5554 2 5584)
      do
  
negative.code: {stdenv, androidsdk}:
  {name, app ? null, platformVersion ? "8", abiVersion ? "armeabi-v7a", useGoogleAPIs ? false, enableGPU ? false, package ? null, activity ? null}:
  
  assert app != null -> package != null && activity != null;
  
  let
    androidsdkComposition = androidsdk {
  