219 cwd: Path = Path.current, |
219 cwd: Path = Path.current, |
220 redirect: Boolean = false, |
220 redirect: Boolean = false, |
221 settings: Boolean = true, // ignored |
221 settings: Boolean = true, // ignored |
222 cleanup: () => Unit = () => () |
222 cleanup: () => Unit = () => () |
223 ): Bash.Process = { |
223 ): Bash.Process = { |
224 val remote_script1 = Isabelle_System.export_env(user_home = user_home) + remote_script |
224 Bash.process( |
225 Bash.process(remote_script1, description = description, cwd = cwd, redirect = redirect, |
225 Bash.context(remote_script, user_home = user_home), |
226 cleanup = cleanup, ssh = ssh) |
226 description = description, cwd = cwd, redirect = redirect, cleanup = cleanup, ssh = ssh) |
227 } |
227 } |
228 |
228 |
229 override def execute(remote_script: String, |
229 override def execute(remote_script: String, |
230 progress_stdout: String => Unit = (_: String) => (), |
230 progress_stdout: String => Unit = (_: String) => (), |
231 progress_stderr: String => Unit = (_: String) => (), |
231 progress_stderr: String => Unit = (_: String) => (), |
232 redirect: Boolean = false, |
232 redirect: Boolean = false, |
233 settings: Boolean = true, // ignored |
233 settings: Boolean = true, // ignored |
234 strict: Boolean = true |
234 strict: Boolean = true |
235 ): Process_Result = { |
235 ): Process_Result = { |
236 val remote_script1 = Isabelle_System.export_env(user_home = user_home) + remote_script |
236 val script = |
237 Isabelle_System.bash(make_command(args_host = true, args = Bash.string(remote_script1)), |
237 make_command( |
|
238 args_host = true, |
|
239 args = Bash.string(Bash.context(remote_script, user_home = user_home))) |
|
240 Isabelle_System.bash(script, |
238 progress_stdout = progress_stdout, |
241 progress_stdout = progress_stdout, |
239 progress_stderr = progress_stderr, |
242 progress_stderr = progress_stderr, |
240 redirect = redirect, |
243 redirect = redirect, |
241 strict = strict) |
244 strict = strict) |
242 } |
245 } |