# HG changeset patch # User wenzelm # Date 1646487089 -3600 # Node ID 8c09e1f82f8162d6582e73069400f0764671255d # Parent aef3926eb6ceafd9b8b106681f1055a54dfea06b more executable files; clarified modules; diff -r aef3926eb6ce -r 8c09e1f82f81 src/Pure/Admin/build_vscodium.scala --- a/src/Pure/Admin/build_vscodium.scala Sat Mar 05 14:24:33 2022 +0100 +++ b/src/Pure/Admin/build_vscodium.scala Sat Mar 05 14:31:29 2022 +0100 @@ -9,6 +9,7 @@ import java.security.MessageDigest import java.util.Base64 +import java.io.{File => JFile} object Build_VSCodium @@ -114,7 +115,7 @@ private def vscodium_exe(dir: Path): Path = dir + Path.explode("bin/codium") - private def macos_exe: String = + def macos_exe: String = """#!/usr/bin/env bash unset CDPATH @@ -126,6 +127,12 @@ exit $? """ + def is_windows_exe(file: JFile): Boolean = + { + val name = file.getName + name.endsWith(".dll") || name.endsWith(".exe") || name.endsWith(".node") + } + def build_vscodium( target_dir: Path = Path.current, platforms: List[Platform.Family.Value] = default_platforms, @@ -185,9 +192,7 @@ File.set_executable(exe, true) case Platform.Family.windows => val files1 = File.find_files(exe.dir.file) - val files2 = - File.find_files(platform_dir.file, - pred = file => file.getName.endsWith(".exe") || file.getName.endsWith(".dll")) + val files2 = File.find_files(platform_dir.file, pred = is_windows_exe) for (file <- files1 ::: files2) File.set_executable(File.path(file), true) Isabelle_System.bash("chmod -R o-w " + File.bash_path(platform_dir)) case _ => diff -r aef3926eb6ce -r 8c09e1f82f81 src/Tools/VSCode/src/vscode_setup.scala --- a/src/Tools/VSCode/src/vscode_setup.scala Sat Mar 05 14:24:33 2022 +0100 +++ b/src/Tools/VSCode/src/vscode_setup.scala Sat Mar 05 14:31:29 2022 +0100 @@ -115,18 +115,6 @@ } """ - private def macos_exe: String = -"""#!/usr/bin/env bash - -unset CDPATH -VSCODE_PATH="$(cd "$(dirname "$0")"/../VSCodium.app/Contents; pwd)" - -ELECTRON="$VSCODE_PATH/MacOS/Electron" -CLI="$VSCODE_PATH/Resources/app/out/cli.js" -ELECTRON_RUN_AS_NODE=1 "$ELECTRON" "$CLI" --ms-enable-electron-run-as-node "$@" -exit $? -""" - def vscode_setup( check: Boolean = false, download_url: String = default_download_url, @@ -197,13 +185,11 @@ platform match { case Platform.Family.macos => Isabelle_System.make_directory(exe.dir) - File.write(exe, macos_exe) + File.write(exe, Build_VSCodium.macos_exe) File.set_executable(exe, true) case Platform.Family.windows => val files1 = File.find_files(exe.dir.file) - val files2 = - File.find_files(install_dir.file, - pred = file => file.getName.endsWith(".exe") || file.getName.endsWith(".dll")) + val files2 = File.find_files(install_dir.file, pred = Build_VSCodium.is_windows_exe) for (file <- files1 ::: files2) File.set_executable(File.path(file), true) case _ => }