about summary refs log tree commit diff
path: root/pkgs/development/mobile/xcodeenv/simulate-app.nix
blob: 96f70ea38325193a8966b0f91cfcd35cc0743eb7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
{stdenv, xcodewrapper}:
{name, appName ? null, app, device ? "iPhone", baseDir ? ""}:

let
  _appName = if appName == null then name else appName;
in
stdenv.mkDerivation {
  name = stdenv.lib.replaceChars [" "] [""] name;
  buildCommand = ''
    ensureDir $out/bin
    cat > $out/bin/run-test-simulator << "EOF"
    #! ${stdenv.shell} -e

    cd "${app}/${baseDir}/${_appName}.app"
    "$(readlink "${xcodewrapper}/bin/iPhone Simulator")" -SimulateApplication './${_appName}' -SimulateDevice '${device}'
    EOF
    chmod +x $out/bin/run-test-simulator
  '';
}