Download raw body.
lang/deno: drop current_exe() workaround
Since you beat me to it, ok volker@ :-)
On 9/5/26 8:08 PM, Kirill A. Korinsky wrote:
> Volker,
>
> here a diff to drop workaround for current_exe()
>
> It was tested and seems works.
>
> Ok?
>
> Index: Makefile
> ===================================================================
> RCS file: /home/cvs/ports/lang/deno/Makefile,v
> diff -u -p -r1.70 Makefile
> --- Makefile 30 Aug 2026 13:13:41 -0000 1.70
> +++ Makefile 5 Sep 2026 17:06:46 -0000
> @@ -10,6 +10,7 @@ USE_WXNEEDED = Yes
> COMMENT = runtime for JavaScript and TypeScript
>
> V = 2.9.6
> +REVISION = 0
> DIST_TUPLE = github denoland deno v${V} .
>
> HOMEPAGE = https://deno.com
> @@ -94,10 +95,6 @@ SUBST_VARS += WRKBUILD WRKSRC
> post-patch:
> mkdir -p ${V8_BPGO_DIR}/{x64.profile,arm64.profile}
> ${SUBST_CMD} ${V8_DISTDIR}/v8/tools/run.py
> - cd ${WRKSRC} && ${SUBST_CMD} \
> - cli/task_runner.rs \
> - cli/tools/jupyter/install.rs \
> - ext/os/lib.rs
> cp ${WRKSRC}/ext/napi/generated_symbol_exports_list_linux.def \
> ${WRKSRC}/ext/napi/generated_symbol_exports_list_openbsd.def
> mkdir ${V8_DISTDIR}/third_party/icu/common
> Index: patches/patch-cli_task_runner_rs
> ===================================================================
> RCS file: patches/patch-cli_task_runner_rs
> diff -N patches/patch-cli_task_runner_rs
> --- patches/patch-cli_task_runner_rs 10 Jun 2026 21:37:13 -0000 1.14
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,43 +0,0 @@
> -Index: cli/task_runner.rs
> ---- cli/task_runner.rs.orig
> -+++ cli/task_runner.rs
> -@@ -329,8 +329,7 @@ impl ShellCommand for NpmCommand {
> - return ExecutableCommand::new(
> - "deno".to_string(),
> - std::env::current_exe()
> -- .and_then(|p| canonicalize_path(&p))
> -- .unwrap(),
> -+ .unwrap_or_else(|_| PathBuf::from("${PREFIX}/bin/deno")),
> - )
> - .execute(ShellCommandContext {
> - args,
> -@@ -360,8 +359,7 @@ impl Default for DenoCommand {
> - Self(ExecutableCommand::new(
> - "deno".to_string(),
> - std::env::current_exe()
> -- .and_then(|p| canonicalize_path(&p))
> -- .unwrap(),
> -+ .unwrap_or_else(|_| PathBuf::from("${PREFIX}/bin/deno")),
> - ))
> - }
> - }
> -@@ -413,8 +411,7 @@ impl ShellCommand for NodeCommand {
> - ExecutableCommand::new(
> - "deno".to_string(),
> - std::env::current_exe()
> -- .and_then(|p| canonicalize_path(&p))
> -- .unwrap(),
> -+ .unwrap_or_else(|_| PathBuf::from("${PREFIX}/bin/deno")),
> - )
> - .execute(ShellCommandContext {
> - args,
> -@@ -513,8 +510,7 @@ impl ShellCommand for NodeModulesFileRunCommand {
> - let executable_command = deno_task_shell::ExecutableCommand::new(
> - "deno".to_string(),
> - std::env::current_exe()
> -- .and_then(|p| canonicalize_path(&p))
> -- .unwrap(),
> -+ .unwrap_or_else(|_| PathBuf::from("${PREFIX}/bin/deno")),
> - );
> - // set this environment variable so that the launched process knows the npm command name
> - context.state.apply_env_var(
> Index: patches/patch-cli_tools_jupyter_install_rs
> ===================================================================
> RCS file: patches/patch-cli_tools_jupyter_install_rs
> diff -N patches/patch-cli_tools_jupyter_install_rs
> --- patches/patch-cli_tools_jupyter_install_rs 10 Jun 2026 21:37:13 -0000 1.5
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,17 +0,0 @@
> -Index: cli/tools/jupyter/install.rs
> ---- cli/tools/jupyter/install.rs.orig
> -+++ cli/tools/jupyter/install.rs
> -@@ -156,12 +156,11 @@ pub fn install(
> - }
> -
> - let display_name = maybe_display_name.unwrap_or("Deno");
> -- let current_exe_path = kernel_exe_path()?.to_string_lossy().into_owned();
> -
> - // TODO(bartlomieju): add remaining fields as per
> - // https://jupyter-client.readthedocs.io/en/stable/kernels.html#kernel-specs
> - let json_data = json!({
> -- "argv": [current_exe_path, "jupyter", "--kernel", "--conn", "{connection_file}"],
> -+ "argv": ["${PREFIX}/bin/deno", "jupyter", "--kernel", "--conn", "{connection_file}"],
> - "display_name": display_name,
> - "language": "typescript",
> - });
> Index: patches/patch-ext_os_lib_rs
> ===================================================================
> RCS file: patches/patch-ext_os_lib_rs
> diff -N patches/patch-ext_os_lib_rs
> --- patches/patch-ext_os_lib_rs 30 Aug 2026 13:13:43 -0000 1.13
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,21 +0,0 @@
> -Index: ext/os/lib.rs
> ---- ext/os/lib.rs.orig
> -+++ ext/os/lib.rs
> -@@ -5,6 +5,7 @@ use std::collections::HashMap;
> - use std::env;
> - use std::ffi::OsString;
> - use std::ops::ControlFlow;
> -+use std::path::PathBuf;
> - use std::sync::Arc;
> - use std::sync::LazyLock;
> - use std::sync::Mutex;
> -@@ -152,7 +153,8 @@ pub enum OsError {
> - #[op2]
> - #[string]
> - fn op_exec_path() -> Result<String, OsError> {
> -- let current_exe = env::current_exe().unwrap();
> -+ let current_exe =
> -+ env::current_exe().unwrap_or_else(|_| PathBuf::from("${PREFIX}/bin/deno"));
> - // normalize path so it doesn't include '.' or '..' components
> - let path = normalize_path(Cow::Owned(current_exe));
> -
>
>
lang/deno: drop current_exe() workaround