--- a/src/Pure/System/isabelle_system.scala Fri Aug 29 16:51:55 2025 +0100
+++ b/src/Pure/System/isabelle_system.scala Sat Aug 30 12:45:27 2025 +0200
@@ -509,6 +509,9 @@
Library.terminate_lines(lines)
}
+ def apply_patch(base_dir: Path, patch: String, strip: Int = 1): Process_Result =
+ Isabelle_System.bash("patch -p" + strip, cwd = base_dir, input = patch).check
+
def git_clone(url: String, target: Path,
checkout: String = "HEAD",
ssh: SSH.System = SSH.Local,
--- a/src/Tools/VSCode/src/component_vscodium.scala Fri Aug 29 16:51:55 2025 +0100
+++ b/src/Tools/VSCode/src/component_vscodium.scala Sat Aug 30 12:45:27 2025 +0200
@@ -124,8 +124,7 @@
{
val patches_dir = Path.explode("$ISABELLE_VSCODE_HOME/patches")
for (name <- Seq("cli", "isabelle_encoding", "no_ocaml_icons")) {
- val path = patches_dir + Path.explode(name).patch
- Isabelle_System.bash("patch -p1 < " + File.bash_path(path), cwd = dir).check
+ Isabelle_System.apply_patch(dir, File.read(patches_dir + Path.explode(name).patch))
}
}