getMixCliToolSync method
Implementation
ElixirMixCliTool getMixCliToolSync() {
final exe = Directory.systemTemp.getUniqueFileSync(
prefix: "elixir_mix",
extension: Platform.isWindows ? "bat" : "sh",
);
if (Platform.isWindows) {
writeWindowsBatchScriptSync(
file: exe,
contents: """
REM Forward arguments to the actual executable
$executable ${_getMixCliToolStartArgs()} %*
""",
);
} else {
exe.writeAsStringSync(
"""
#! /bin/sh
exec $executable ${_getMixCliToolStartArgs()} "\$@"
""",
flush: true,
mode: FileMode.writeOnly,
encoding: systemEncoding,
);
ChmodCliTool().setPermissionsSync(
filepath: exe.path,
owner: {read, write, execute},
group: {read, execute},
other: {read, execute},
);
}
return ElixirMixCliTool(
executable: exe.path,
);
}